Tuesday, July 26, 2011

Using Jenkins - New way to manage Product automation

Jenkins is an opensource tool for managing daily JOBS. Jobs can be creating builds, running junits, automation suites (web-based), scheduled email sending etc. Its so powerful and flexible.

For web-based automation, following steps would be needed

  • Checkout latest code from SVN - The code compilation is done based on pom.xml configuration
  • Prepare testbed (close the sessions) - Using windows command executors like psexec the target test boxes are prepared for automation running (tasks like closing all remote control session, browser sessions)
  • Start running selenium jobs using a parent job which will invoke as many child jobs required parametrized builds, the child job is configured to run wholly based on - 
    • grid hub based distributed testcases - test cases which can be run parallel are configured this way
    • standalone selenium server testcases - testcases which need to be tied to a node are configured this way
  • Aggregate test reports of multiple automation suites - The child jobs need to put the results in a common folder so that they would be aggregated and shown
  • Send email to entire team
The jobs can be configured to run daily. Happy Automation.

No comments:

Post a Comment