Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Software Test Automation

Yash Patel
January 12, 2018

Software Test Automation

Software Development and Test Automation. Why you need test automation. What you should and what you should not automate.

www.thesunflowerlab.com

Yash Patel

January 12, 2018
Tweet

More Decks by Yash Patel

Other Decks in Technology

Transcript

  1. What Is Test Automation • Test Automation means using an

    automation tool/software to execute test case. • Test automation include preparing test data, executing test, comparing expected and actual results, and generate test reports. • You can simply think application is testing other application.
  2. Why Test Automation • Save time and money • Quicker

    Feedback • Improve Release Frequency • Risk Assessments with new changes • Test multilingual application • Reduce human error
  3. Manual VS Automated Efforts Let’s take application with 200 functional

    tests. Each functional test execution require test data setup, comparing test results, and test results report generation. Assuming human can run 2 tests per hour, running all manually would take total 100 hours. Now let's assume, QA/Engineer take 5 hours to automate 1 functional test and with this rate it will take 1000 hours.
  4. Return Of Investment • Sounds like lot of time and

    money, right? Think again! This investment pays off just after 10 executions. • How much each regression test cycle cost? Let's say if your cost for your engineer is $50/Hour (Salary + benefits) then it will cost $5000. • Many organization get return of investment within first year. Even with slower pace one should receive return of investment within 2 years.
  5. What you shouldn’t Automate? • One off test scenario •

    Tests need manual intervention. • Test verification have external dependency • Non-deterministic tests • Tests which are maintenance nightmare
  6. What you should Automate? • Test cases which take long

    time to execute • Test cases which test critical business functionality • Test cases that are executed repeatedly • Test cases that are very monotonous and difficult to test manually
  7. What you should Automate? • Test cases which take long

    time to execute • Test cases which test critical business functionality • Test cases that are executed repeatedly • Test cases that are very monotonous and difficult to test manually
  8. Test Automation Framework Test Automation Framework is an execution environment

    for automated tests. Framework is blend of various guidelines, process, practices, project structure, modularity, data set-up, result verification, report generation etc. to automate tests. Advantage of Test Automation framework • Code Reusability • Reduce maintenance cost • Library to test different application framework • Standardize process and practice • Reporting capability