100 likes | 393 Views
Best Practices Of Using QC API in Test Automation By CHANDRU. S & VINOTH KUMAR .R Infosys Limited. May 2012. Objectives. Challenges in Test Automation Test Management & QC API Test Automation Processes Simplified using QC API Benefits. Covered. Not Covered. What & Why of QC API?
E N D
Best Practices Of Using QC API in Test AutomationByCHANDRU. S & VINOTH KUMAR .RInfosys Limited. May 2012
Objectives • Challenges in Test Automation • Test Management & QC API • Test Automation Processes Simplified using QC API • Benefits • Covered • Not Covered • What & Why of QC API? • How to reduce effort in test processes • Benefits achieved • Implementation & Coding used • Details of tools created
Situation Overview • Great, we have completed our automation execution of 3250 test cases. But we are yet to create & update this information in manual functional test set. Do we have an automated way to do this? • Who found the process of linking test cases with defects? I ended up spending my whole day for just this! • Our test automation process is very streamlined and the automation framework we use is very effective. Are there any scopes of improvement to do things much effective? • We have to just create 13 automation defects for the day. It’s whose turn to create defects today? • The functional test cases have been updated in QC by the manual test team. Can I download the latest set of modified functional test cases and estimate the automation changes through a tool?
Test Management & QC API Q C A P I L I B R A R Y Q C C O M P O N E N T S E X T E R N A L I N T E R F A C E
Test Automation Processes Simplified Test Plan Plan the testing process, from building a test plan tree to creating tests for given requirements. Challenge(s) • Performing Automation Analysis & Estimation directly in QC is time consuming • For a Test Automation Project in Agile Methodology, the functional test partners who are geographically located may frequently modify / update test cases on a daily basis. Best Practice(s) • Automated Integrated Agile Dashboard to perform • Download info for automation feasibility analysis / estimation • Update estimation analysis output to QC • Daily Automation Progress Update • Disconnected Mode of Update to save QC downtime(s) & slowness • New TC / Modified TC Alert to understand QC addition(s) / modification(s)
Continued... Test Lab Create test sets, execute manual and automated tests, and review test results Challenge(s) • Consolidating customized execution status summary for an automation team. • Automation test results are a mystery to the functional test partners. Best Practice(s) • Automated Execution Progress Report per execution basis. • Test Lab Updater to perform • Update Automation Execution Status of test cases in Functional Test Suite for each execution performed in a periodic basis • Attach screenshots automatically as proof of failure • Provide functional test steps in automation results via coding • Defect Draft Creation for failed test cases ERR CODES
Continued... Defects Report application defects and keep track of the repair process until the defects are resolved. Challenge(s) • Identification of automation test scripts for defect retesting Best Practice(s) • Add Test Cases To Test Set to perform • automatically fetch the linked automation scripts • prepares a functional test suite, executes & provide defect retesting results from automation behalf
Benefits • Reduced DIR as the QC API methods prevents “Human Error” • Reduced the Script Execution Cycle, which resulted in early completion of regression • Reduced time taken to implement the same tools in other similar projects as the tools created are generic and reusable • Increased GOTO market • Increased Effort Savings & Cost Savings • Increased Test Script Preparation productivity • Increased Test Execution productivity
Benefits Continued... Test Planning & Analysis Scenario: In an automation project A, the automation estimation was calculated based on various parameters in the design steps of functional test cases like number of steps, db validations, checkpoints etc. It required significant manual effort to estimate each test case. This was automated using QC API which resulted in reduced estimation effort. Effort Savings – 62% of Estimation Effort (approx.) Test Design/Development Scenario: In an Agile Project B, during test development phase; the functional test cases were modified frequently for change in requirements which the automation team was not notified of. We developed a dashboard using QC API which runs automatically on a daily basis and notifies the new additions / updates of existing test cases to automation team. Effort Savings Split up Average Effort Savings – 66.75% of Person Hours Test Execution Scenario : In Project C, significant time was spent during the test execution phase for analyzing the test case results [to fetch functional test steps] and by verifying the details from functional QC every time and to log defects manually for defects. After implementing QC API, the average number of scripts executed per day has increased and the number of hours spent on analysis per day had reduced significantly. Effort Savings – 21% of Execution Effort (approx.)