XPath matchers can be combined with CSS-selector matchers. This is really useful if not, for example, the content of...
A capybara driver that uses WebKit via QtWebKit.
Artifice allows you to replace the Net::HTTP subsystem of Ruby with an equivalent that routes all requests to a...
Bryan talked about the differences between imperative and declarative scenarios. In my opinion, both styles have benefits and should be...
Back when Steak was first released, Capybara didn’t have any of the nice RSpec helpers it does now. A...
PhantomJS is a minimalistic headless WebKit. It has fast and native support for various web standards: DOM handling, CSS selector...
Specify these gem versions in your Gemfile: gem 'cucumber', '~> 1.3.0' gem 'cucumber-rails', '= 0.3.2' # max version for Rails 2
If you have content inside a page that is hidden by CSS, the following will work with Selenium, but not...
If you want to get a deep understanding of how closures, blocks, procs & lambdas in Ruby work, check out the...
A while ago we were working on an application that had an entire version specially created for mobiles, such as...
A check if two date or time ranges A and B overlap needs to cover a lot of cases:
If you’re testing the behavior of deprecated code in your Ruby project, the warning messages littered throughout your spec...
Selenium has been the siren song that continually calls out to us. Unfortunately, in practice we’ve been unable to...
Terminus is a Capybara driver where most of the driver functions are implemented in client-side JavaScript. It lets you...
Sometimes you inherit a non Rails or non Rack based web app such as PHP, Perl, Java / JEE, etc. I...
These steps are now part of Spreewald. This note describes a Cucumber step that lets you write this:
So this is the simulation that I use in my Agile Testing class, as well as in other contexts where...
You should test the callback methods and its correct invocation in two separate tests. Understand the ActiveRecord note before you...
Don't use should validate_format_of(...) because that matcher works in weird ways. Use the allow_value matcher instead...
An alternative to this technique is using VCR. VCR allows you to record and replay real HTTP responses, saving you...
A fake filesystem. Use it in your tests.
This may be awkward to set up, but will work once you're done. Fun facts:
Cerberus is a lightweight and easy-to-use Continuous Builder software for Ruby. It could be run periodically from a...