Close
Glad You're Ready. Let's Get Started!

Let us know how we can contact you.

Thank you!

We'll respond shortly.

  • Blog Navigation
Cucumber performance improvements with Devise Token Authenticatable

We’re using Devise’s token_authenticatable to improve our Cucumber test suite performance.

Here’s an example feature


  Scenario: I would like to edit a user account
    Given I am logged in as an admin user
    ...

And here’s the token_authenticatable step


  Given /^(?:I am logged in|the user is logged in|the user logs in|I log in)(?: as an? (w+) user)?$/ do |role|
    if ENV['use_token']
      visit admin_dashboard_path(:token => @user.authentication_token)
    else
      Given("the user logs in with email: "#{@user.email}", password: "#{@password}"")
      ...
    end

We’ll then run cucumber using a “faster” profile


$ cucumber -p faster

And finally, here’s our cucumber.yml


faster: <%= std_opts %> features FASTER=true

Our cucumber tests run significantly faster after switching to the token_authenticatable approach.

Comments
  1. Interesting, nice tip!

Post a Comment

Your Information (Name required. Email address will not be displayed with comment.)

* Copy This Password *

* Type Or Paste Password Here *

Share This