selenium.dev

I recently stumbled over a problem that my feature tests broke in CI because of a mismatching chromedriver version.

thegnar.com

View specs are a powerful tool to test several rendering paths by their cases instead of using a more costing...

The recommended additional setup of the spreewald gem, a useful set of cucumber steps, includes adding a file for defining...

Chromedriver (or selenium-webdriver?) will not reliably scroll elements into view before clicking them, and actually not click the element...

Both knapsack and parallel_tests have the option to split groups by historic execution time. The required logs for this...

Newest versions of Chromedriver breaks the user agent for device emulation via device name. In previous versions the user agent...

Capybara allows you to filter elements that are focused. page.find(:fillable_field, focused: true) # Filtering only fillable inputs for performance...

As we are slowly switching from Cucumber scenarios to RSpec feature specs, you might be tempted to write assertions like...

Debugging your integration tests, that run a headless Chrome inside a docker image, is tricky. In many cases you can...

Within Capybara you most certainly use the #check- and #uncheck-method to (un)check checkboxes. But there's one problem...

Capybara has a variety of finder methods like find_button to help you look up DOM elements. There are also...

Maintaining larger projects makes it more difficult to balance refactoring and upgrade tasks according to its actual value. Consider to...

I recently enjoyed debugging a Cucumber step that tried to be retryable using a patiently block: Then /^"([^"]*)" should( not)? be...

Unpoly's [up-observe], [up-autosubmit] and [up-validate] as well as their programmatic variants up.observe() and up.autosubmit...

Here are a few common patterns that will probably lead to flaky specs. If you notice them in your specs...

Testing file download links in an end-to-end test can be painful, especially with Selenium. The attached download_helpers.rb provides...

Attaching files to a field that is handled by Carrierwave uploaders (or maybe any other attachment solution for Rails) in...

github.com

When Capybara locates elements in the DOM, by default it allows only accessing visible elements -- when you are using a...

makandra dev
stackoverflow.com

Modern versions of Capybara include a finder method #ancestor which allows you to find a parental element using CSS or...

Jasmine is a great way to unit test your JavaScript components without writing an expensive end-to-end test for...

A flaky test is a test that is often green, but sometimes red. It may only fail on some PCs...

Sometimes a link or input field has no visible label. E.g. a text field with a magnifying glass icon 🔎 and...

The RSpec matcher tests if two HTML fragments are equivalent. Equivalency means: Whitespace is ignored Types of attribute quotes are...

We are using Spring in our tests for sequential test execution but not for parallel test execution. And Rails requires...