Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Advanced Software Test Automation

843 views

Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Advanced Software Test Automation

  1. 1. ADVANCED TEST AUTOMATION By Unmesh Ballal
  2. 2. AGENDA • Introduction to Test Automation • When to Automate • White – Box Testing • Benefits of Test Automation • Tools Used in Test Automation • Automation Test Case Specifications • Test Automation Process • Conclusion
  3. 3. INTRODUCTION TO TEST AUTOMATION • Criteria for Test automation • Functional testing is completed • Unit testing is not enough for automation • Scenario to be automated • Need To reduce integration to external applications • Maintain base compatibility and extend application with new versions and complex functionality • Automate smaller code changes • Identifying and finding defects in scenarios
  4. 4. WHEN TO AUTOMATE • Build needs to be stable • No New functionality is added • No defects since the test execution and build validated
  5. 5. WHITE – BOX TESTING – THINGS TO CODE • Control flow testing • Data flow testing • Branch testing • Path testing • Statement coverage • Decision coverage
  6. 6. BENEFITS OF TEST AUTOMATION • Save time in executing tests • Repeatability • Automated maintenance • Coverage of testing • Quality assurance • Cost reduction for regression testing • Reduce Testing cycles • Manual testing Human error is eliminated • More opportunity to improve productivity • Software can be enhanced without interference of modules that are integrated • The testing can be executed using configurable data.
  7. 7. TOOLS USED IN TEST AUTOMATION • Visual Studio 2008 C# • Microsoft Test • NUnit
  8. 8. AUTOMATION TEST CASE SPECIFICATIONS • Pre-condition is scenario – will be required to pre create data before calling the method. • All returned data is used in test assertions • Certain steps can be verified after method call returns to ensure that code is executed. • All data referred in the function is created by helper methods before calling the methods so there is consistency in execution • Post conditions are scenario level validations that will be required as an additional code.
  9. 9. TEST AUTOMATION STRATEGY • Write test case for each flow considering if-else flows • Automate some methods automatically by automating top – level classes • Identify number of methods for each class to be automated • Use Code coverage tool and identify gaps and improve coverage • Start Automating!
  10. 10. TEST AUTOMATION PROCESS – CREATE TEST PROJECT • Create a New Visual Studio solution sub-project – Test Project template
  11. 11. CREATE NEW TEST PROJECT
  12. 12. ADD TESTS TO TEST PROJECT
  13. 13. TEST CASE DEVELOPMENT
  14. 14. NEXT STEPS • Add Helper Methods for building data • Accessors to test private methods • Execute the Tests • Use a Code Coverage tool for analysis • Identify missing coverage • Automate process on command line for continuous integration e.g. mstest /testcontainer:TestProject1.dll
  15. 15. CONCLUSION • Re-run test cases if Code Changed • Validate integrity continuously by validating results • Update code if test case failed and not a defect • Done!

×