0% found this document useful (0 votes)
209 views2 pages

Cucumber Capybara Test Automation

Automated testing brings several benefits over manual testing such as eliminating human error, ensuring test suites stay up to date as systems change, and allowing tests to run quickly at any time. However, automation is not a replacement for manual testing and not every test can or should be automated. The post discusses tools for test automation including Cucumber for writing tests in plain text, Capybara for simulating user interactions, and Ruby as the programming language.

Uploaded by

kiran
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
209 views2 pages

Cucumber Capybara Test Automation

Automated testing brings several benefits over manual testing such as eliminating human error, ensuring test suites stay up to date as systems change, and allowing tests to run quickly at any time. However, automation is not a replacement for manual testing and not every test can or should be automated. The post discusses tools for test automation including Cucumber for writing tests in plain text, Capybara for simulating user interactions, and Ruby as the programming language.

Uploaded by

kiran
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

Test Automation

In this blog I hope to give an insight into the tools we are using to automate testing at
GameSparks.
However I think we should first address why we are using automated testing.

The Benefits of Automated Testing


Automation Eliminates Human Error An automated test will perform the test the same way
every time. No steps will be overlooked or misinterpreted.
Automation Ensures the Test Suite is Up to Date As the platform grows the test suite can
become out of date as changes come through. Changes to the system will be reflected quickly
in the Automation results and highlight the areas that require maintenance.
Automation Speeds Up Testing Automated Test Tools can run through tests much quicker
than a manual Tester. This reduces the amount of time it takes to complete a Test suite.
Automated Tests Can Be Run at Any Time Automated tests can be run outside of normal
office hours. A large suite of tests can run overnight or on weekends or at any time when a
manual tester is not available.
Automation Allows for More Effective Use of Test Resources The time taken to run tests is
reduced. The quality of the software and testing process is more reliable and can be easily
repeated. This frees up the Testers to concentrate on finding the more complex bugs through
ad hoc and exploratory testing.
Automated Tests Can Be Reused Test scripts can be written to be agnostic of the
device/platform they are running against. These scripts can then be reused. Also the UI may
change but the scripts should hold up if the underlying behaviour is still the same.
Automated Testing Compliments Continuous Integration An Automated Test suite can be
included in the projects Continuous Integration. For example a suite of regression tests can
be kicked off after the nightly build, allowing the team to easily check the stability of the
build the next day.

Common Misconceptions
Automation is a Magic Bullet the initial setup and step creation will take time and effort. It
will also require effort to maintain. This needs to be factored into any planning or estimation.
Everything Should Be Automated Not everything is suitable for automation. If you have a
test that takes 30 seconds to perform but a week to automate it isnt worth automating. Also
some things such as the look and feel of the UI cannot be easily automated and will require a
manual check.
Automation Replaces Manual Testing Automation will never replace manual testing.
Automation is very good for regression but it cannot replace the insight, experience and

understanding of a tester. Automation frees up testers to spend more time on exploratory


testing, finding defects that automation alone would not encounter.

Tools
Cucumber
http://cukes.info
Cucumber is a tool that executes plain-text functional descriptions as automated tests. The
language that Cucumber understands is called Gherkin. Cucumber itself is written in Ruby,
but it can be used to test code written in Ruby or other languages including but not limited
to Java, C# and Python
As you can see it is very easy to understand what the test is trying to acomplish.

Capybara
http://jnicklas.github.io/capybara/
Capybara is a library written in the Ruby programming language which makes it easy to
simulate how a user interacts with your application. Capybara can talk with many different
drivers which execute your tests through the same clean and simple interface. You can
seamlessly choose between Selenium, Webkit or pure Ruby drivers

Ruby
https://www.ruby-lang.org
Ruby is an open source programming language with a focus on simplicity
For those not familiar with Ruby the following links may be of use:

You might also like