Test Automation Selenium
Test Automation Selenium
About Corbus
Corbus, LLC, a global solutions provider founded in 1994, offers superior services combining years of experience, solid partnerships and adaptability. Corbus solution offering includes Information Technology (IT), Supply Chain Management (SCM) and Project Management (PMO) services. IT portfolio consists of E-Commerce, Business Intelligence, Content Management, Third Party Testing and Custom Solutions. In SCM, Corbus specialize in Source-to-Pay (S2P), Procure-to-Pay (P2P), Spend Management and MRO Management Team: Rajesh (Raj) K. Soin - CEO David P Spencer - COO Jason Evans - Sr. VP Sales & Marketing Dr. Amit Shekhar India Head Stephen - CFO
Business Workflow testing || role based testing || product catalog testing || shopping & checkout flow testing || Interface testing
BI Testing
Manage Full Lifecycle Testing || Manage Integrated System Testing || Compliance Testing || Usability Testing || Web Services Testing || scope based testing
Selenium || QTP || Load runner || Meter || Bromine || HP Web Inspect || Hi Software Accessibility
Digital Marketing ERP Testing
Specialized Services
Tools
Agenda
Challenges of Test Automation Points to consider while calculating the ROI for automation Can automation suite be used beyond Regression testing? To what extent can you automate? When to start automation? Automation Life Cycle Advantages and disadvantages of using Selenium Selenium Vs other commercial tools Test case template and checklist for writing effective test cases Hybrid framework on Selenium using C#.
Challenges Test Automation Selection of Automation Tool No Defined Process for Executing Automation Project within an organization Availability of Right Resources Commitment from Customer or Management
Selenium does not have any cost attached to it. The only cost is the effort which will go for designing and developing the script for the application Selenium scripting can be done in a number of programming languages like C#, Perl, PHP, Ruby etc.. One can easily find right resources for the programming language chosen for Selenium Automation
No. of Test Cases Planned for Automation Number of Test Iteration Planned in a Year Maintenance/Support Cost
Effort for Manually Executing the Test Cases Automation Effort for Automating the Test Cases Net Savings in a Year
Substitute 1st Round of Manual Testing with Automation Using Progressive Automation Use it for Smoke Testing, Sanity Testing
If 50 - 60% of the test cases do not require Manual Execution even for the first time, then imagine the cost and effort benefit due to automation.
Simple - The Web based application is a static site with Navigation, Content Rendering, Login Feature, Role wise access, Simple Transaction and a Content Management System with well defined workflow. Medium - The application is dynamic in nature like Online Booking System or Rail Reservation System. Complex - The application built for Banking domain, Ecommerce Domain wherein integration with other enterprise system is involved. The data is coming through various layers and the business logic is complex.
Note: The above metrics are prepared based on our organization benchmark and may vary depending on the nature of application and underlying business
Automation Lifecycle
Understand AUT Review the available Test Cases Modify the Test Cases to make it modular Identify Automation Candidate from existing test cases Design the Framework Start Generating the Script Debug the script and implement robust error handling Peer Review of Script Unit Test the Script Batch Run the Script Analyze the Result Make Changes based on Result Analysis Handover to Test Execution Team
Disadvantages Object scanning feature is not available, so one has to record the application in Selenium IDE and check the Object detail from the generated Selenese code
Supports many languages for scripting like You cannot drive your test cases from Test Java, Groovy, C#, Perl, PHP, Python and Ruby Management Tool other than Bromine. You have to manually drive the test cases from the Framework using NUnit Support for multiple browser and platform. You can run the same version of the script on multiple browsers and platform by designing a framework around it. Selenium can only be used for automating Web Based System and cannot be used for Desktop application
X X X
X -
Check the Modularity of the test cases. The test cases should be written in a modular way. The reusable test cases such as Login, Navigation etc.. should be marked as Template Test Case which will be referred while writing the test cases for other Business Function. These Reusable Test Cases can be maintained separately to for easy reference while doing automation.
Automation Steps
Record the Test Steps for each Scenario in Selenium IDE Insert required validation point while recording the script Convert the Selenese Script into C# Copy the C# Script Open Visual Studio and create a project Add C# File and Paste the copied Script Add Conditional Statement as per Test Case Steps Call the Reporting Module wherever you are checking the Test Condition for Pass & Fail Compile the code and fix any compilation error. Add the Compiles DLLs in NUNIT Unit Test the Test Script Analyze the Result Turnover the Test Script for execution.
Online References
http://www.seleniumhq.org http://code.google.com/p/flash-selenium/ http://release.seleniumhq.org/selenium-core/0.8.0/reference.html
Selenium Tool Selenium IDE Selenium RC Latest Version 1.14 2.14.0 URL http://release.seleniumhq.org/seleniumide/1.4.1/selenium-ide-1.4.1.xpi http://selenium.googlecode.com/files/seleniumserver-standalone-2.14.0.jar
Selenium Client Drivers Java C# Ruby Python 2.14.0 2.14.0 2.14.0 2.14.0 http://selenium.googlecode.com/files/selenium-java2.14.0.zip http://selenium.googlecode.com/files/seleniumdotnet-2.14.0.zip http://rubygems.org/gems/selenium-webdriver http://pypi.python.org/pypi/selenium
Next Steps
Get Started Visit http://seleniumhq.org/docs/ For any query, please drop me an email at sachink@corbus.com Visit us at www.corbus.com
Q&A