Integration of Webdriver ruby RSpec test suite with CircleCi

CircleCI has a continuous integration tool which builds and run your application in cloud environment. You can integrate and build your automation test scripts. CircleCI support following language:
Language:
1. Ruby.
2. PHP.
3. Java.
4. Python

Mobile Platform:
1. Android
2. iOS

How to setup:
1. You must have a git account.
2. Click on login circleci it will redirect git account login page.
3. Login in to git with your credential.
4. Click on Add Projects menu.
5. Choose a repository, of GitHub such as pushes and pull requests. It will kick off the first build immediately, and a new build will be initiated each time someone pushes commits.

Integration of automation with CircleCI:
To build and execute your automation test scripts you need to create a circleci.yml file and put at root folder of your repository. CircleCI read the circle.yml file and execute steps mentioned in this file.
Circle.yml : This configuration file is repec test framework. You can modify this as per your requirement.
dependencies:
  pre:
    - gem install rails
    - gem install rubyzip
    - gem install ffi
    - gem install websocket
    - gem install bundler --pre
    - gem install parseconfig
    - gem install minitest -v '4.7.5'

  override:
    - bundle install: # note ':' here
        timeout: 180 # fail if command has no output for 3 minutes


## Customize test commands
test:
  override:
    - rspec test_suite.rb

In “## Customize dependencies” section you need to add your dependencies, like for rspec you need to install ruby and its required gems. In “Customize test commands” section add test execution command.

Note: Put your “Gemfile.lock” file at root of repository parallel to circle.yml file.

When you check-in code in to repository, circleci automatic build your code and execute test scripts.

Parallel Execution:
## Customize test commands
test:
  override:
    - bundle exec rspec:
        parallel: true
        files:
         - test_suite1.rb
         - test_suite2.rb  

You should see that both suite execute parallel

No comments:

Post a Comment

Leave your comments, queries, suggestion I will try to provide solution