{"id":13482750,"url":"https://github.com/gabrielrotbart/gatling","last_synced_at":"2025-03-27T13:32:35.314Z","repository":{"id":56848047,"uuid":"2260265","full_name":"gabrielrotbart/gatling","owner":"gabrielrotbart","description":"Automated visual testing","archived":false,"fork":false,"pushed_at":"2013-08-01T05:24:55.000Z","size":447,"stargazers_count":55,"open_issues_count":2,"forks_count":6,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-03-24T19:44:59.459Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gabrielrotbart.png","metadata":{"files":{"readme":"README.rdoc","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2011-08-24T07:46:33.000Z","updated_at":"2024-01-21T22:53:49.000Z","dependencies_parsed_at":"2022-09-22T14:26:00.974Z","dependency_job_id":null,"html_url":"https://github.com/gabrielrotbart/gatling","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gabrielrotbart%2Fgatling","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gabrielrotbart%2Fgatling/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gabrielrotbart%2Fgatling/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gabrielrotbart%2Fgatling/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gabrielrotbart","download_url":"https://codeload.github.com/gabrielrotbart/gatling/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245854624,"owners_count":20683393,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-07-31T17:01:05.149Z","updated_at":"2025-03-27T13:32:34.859Z","avatar_url":"https://github.com/gabrielrotbart.png","language":"Ruby","funding_links":[],"categories":["Tools and frameworks","Tools and frameworks (a-z↓)"],"sub_categories":[],"readme":"= Gatling\n\nAn integrated visual RSpec matcher which makes real visual testing easy.\n\n-------------------------------------\n\n== Installation:\n\n  gem install gatling\n\nIn spec_helper.rb:\n\n  #main app\n  require 'gatling'\n\n  #plug and play custom rspec matcher\n  require 'gatling/matchers/look_like_matcher'\n\n=== Configuration settings:\n\n==== Reference_image_path - sets where the reference and diff images are saved to.\n\nFor Rails application, a default reference images folder will be created at spec/reference_images. This folder is root to all the reference\nimages to be compares.\n\nAlso created are subfolders:\n- /candidate  - will hold candidate images which can be used as reference images\n- /diff - will hold the diff images generated by failed comparison tests\n- /temp - will only ever hold one screenshot at a time, used to create the cropped element\n\n==== max_no_tries \n- sets how many times Gatling will try and match the element against the reference image. Handy to reduce fragility of tests due to animations and load times. Defaults to 5.\n\n==== Sleep_between_tries \n- sets the sleep time (in seconds) between match tries (requires max_no_tries \u003e 1). Defaults to 0.5\n\n==== browser_folders \n- *Currently only available with Selenium-Webdriver / Capybara* - create reference folders based on the current Selenium driver's browser. Allows for cross-browser visual testing.\n\n==== Configuration settings are set with the following:\n\n  Gatling.config do |c|\n    c.reference_image_path = 'some/path'\n    c.max_no_tries = 4\n    c.sleep_between_tries = 5\n    c.browser_folders = false\n  end\n\nGATLING::CONFIGURATION will be depreciated in future versions.\n-------------------------------------\n=== Usage:\n\nIdentify an element to match, for example:\n\n        @element = page.find(:css, '#button')\n\nUse Gatling's custom matcher (conveniently supplied in the gatling gem) and specify the reference image:\n\n        @element.should look_like('button_ref.png')\n\nGatling will take care of cropping the element and try and make a targeted match without the noise of the whole page.\n\nIf the matcher fails, the test will fail, an exception will be raised and both a diff image and a new candidate image will be created.\n\nIf no reference image exits, the test will still pass and a reference file will be created for future comparisons.\n\n-------------------------------------\n\n=== Training mode:\n\n\u003cb\u003eGATLING_TRAINER WILL BE DEPRECIATED.\u003c/b\u003e Gatling now saves reference files natively when files do not exists.\n\nGatling can be run in training mode which will create reference images where ones do not exist.\n\n\u003cb\u003eCAUTION: Trainer mode will pass all the test which rely on the Gatling custom matcher, this can mean a false green build.\nPlease make sure you are saving 'clean' references\u003c/b\u003e\n\nTrainer mode will not overwrite existing references. If you are updating, just delete the old reference image.\n\nTo set trainer mode, prefix rspec command line with $GATLING_TRAINER = true\n\n\nExample:\n        $GATLING_TRAINER = true rspec spec/my_spec.rb\n\n-------------------------------------\n\n==== Non-gem dependencies:\n\nImagemagick must be installed:\n\n  $sudo apt-get install imagemagick\n\n-------------------------------------\n\n\n== Contributing to gatling\n\n* Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet\n* Check out the issue tracker to make sure someone already hasn't requested it and/or contributed it\n* Fork the project\n* Start a feature/bugfix branch\n* Commit and push until you are happy with your contribution\n* Make sure to add tests for it. This is important so I don't break it in a future version unintentionally.\n* Please try not to mess with the Rakefile, version, or history. If you want to have your own version, or is otherwise necessary, that is fine, but please isolate to its own commit so I can cherry-pick around it.\n\n== Copyright\n\nCopyright (c) 2011 Gabriel Rotbart, Amanda Koh. See LICENSE.txt for\nfurther details.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgabrielrotbart%2Fgatling","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgabrielrotbart%2Fgatling","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgabrielrotbart%2Fgatling/lists"}