Mornings can be rough. To make them a little easier, leave yourself a failing test if your work isn’t...
After I upgraded to Mac OS X Mavericks, I regularly got this error message when running Cucumber features with Selenium...
If you want to test that a certain text is contained within the document title of your page, you can...
TLDR: This card explains which threads and processes interact with each other when you run a Selenium test with Capybara...
This error occurs when you already have a database.yml which defines the database for the cucumber environment instead of test...
I've written about the problem with user stories before. At the time, I found it better to just have...
Use protocol independent URLs whenever possible so that the browser will choose the protocol related to the protocol which the...
One of many useful techniques when your test suite needs to talk to a remote API.
Rails has always included a scaffold script that generates a default controller implementation for you. Unfortunately that generated controller is...
It is good programming practice to Don't Repeat Yourself (or DRY). In Ruby on Rails we keep our code...
If you need to test interaction with a remote API, check out the VCR gem as an alternative to Webmock...
So you client has asked you to implement a row of buttons to like the URL on Facebook, Twitter and...
If you want to have routes that are only available in tests (e.g. for testing obscure redirects), you can use...
Using text-transform: uppercase - especially on form labels - can cause you serious headaches in Selenium tests. Sometimes the web driver...
We sometimes send calender data or tasks using iCalendar (ICS) via eMail as specified in RFC 5545. Recently, a customer...
In contrast to RSpec's included allow_value matcher, the attached matcher will also work on associations, which makes it...
The translation method translate and its alias t have bang brothers: translate! and t!. They will raise I18n::MissingTranslationData on...
When two classes implement the same behavior (methods, callbacks, etc.), you should extract that behavior into a trait or module...
Simply give the select helper an option :disabled, passing either a single value or an array. You need to specify...
So you're hunting down a regression (or just a bug) and want to use git bisect to find out...
Consul 0.9 comes with many new features to optimize powers that only check access to a given record. e.g. Power.current.post...
Similar to closing an opened browser window, spreewald now supports the I switch to the new browser tab step.
1. Saving files to a directory that is not shared between deploys or servers If you save your uploads to...
Capybara drivers will usually delete all cookies after each scenario. If you need to lose cookie data in the middle...