Framework Anil 18-12-2019
Framework Framework define guidelines and set standards for all phases of ADLC (Automation Development Life Cycle). This (Hybrid) framework is a combination of three frameworks (Functional, Data Driven, Keyword Driven) and (re-usability, advanced error logic, custom QTP methods, dual function) techniques. 18-12-2019
Advantages of Hybrid Framework 1. Reduce testing time. 2. Improve testing productivity. 3. Improve product quality 4. Reduce QA costs. 5. Consistent test results. 6. Calculate page response time of all the pages. 7. Schedule test runs. 18-12-2019
Framework Folder Structure 18-12-2019
Hybrid Framework Framework contain different files associated with different functionality, all the files to be placed in the corresponding folders; so that it is easy to maintain. Note: Framework can't identify the folders if folder names get renamed, except sub folders created under "AutomationTestDocuments". AutomationTestDocuments folder contain sub folders relating to each test. If we have two tests, there will be two sub folders. Create new folders as per the test requirement. There is no restriction on the folder name. 18-12-2019
Hybrid Framework ExecutedScripts folder contain copy of the test folder after execution. If we run the same test again and again (schedule on daily basis) results are over written. In order to preserver the test results, framework will copy the test folder into newly created folder with time stamp, once the test got completed. 18-12-2019
Hybrid Framework Frame_WorkGep folder contain QTP code of one action "Kick-Off" with single line of code "Call Start-Up". Entire project code reside in the VBS file. Following are the reasons for choosing this kind of design. 1. VBS file are very light in terms of size. 2. Framework is entirely based on DP (Descriptive programming). 3. We can easily implement any configuration management tool. 18-12-2019
Hybrid Framework Library folder contain application libraries which contain code relating to keyword functions and contain sub folder called "Core Libraries" that contain files corresponding to actual framework only. 18-12-2019
Hybrid Framework Architecture 18-12-2019
QTP AOM Script QTP AOM Script 1. vbs file created using AOM. 2. Attached to windows scheduler. 3. Identify the place of execution using system IP. If script is executed on new location, it would consider IP address as place of execution. 4. As there are many tests under "AutomationTestdocuments", script need to be updated with the test folder name and path that we are planning to execute. 5. Script will open the QTP and associate the test specified in the step 4. 6. Two parameters are passed as environment variables (location and test path). 7. Copy the results in "ExecutedScripts" folder to protect results from overwriting, if initiated through AOM script only. 8. Test can also be executed in standalone mode without AOM script, especially useful during test creation and debugging. 18-12-2019
Hybrid Automation Framework KickOff Action This is the only QTP action used in the framework, it contain "Call funKickOff" to initiate KickOff script. KickOff Script Contain global object declaration, initialization and controlling test execution mode. This script will initiate Start-Up script. Start-Up script This script will configure the framework as per the settings provided in the startup spreadsheet. Control Script Start up script will initiate control script. Based on the start-up spreadsheet settings, script will read each test case from the control spread sheet and call the driver script with test case id, test case name. This script will also generate real time status of the test in the form of pop-up message and update the test status. Driver script Based on the test case id and test case name, it will map the test case lower bound and upper bond, then it will read each line of the test case and call corresponding key word functions. 18-12-2019
Start Up Spreadsheet 18-12-2019
Hybrid Automation Framework Row 1 - Default URL - If you are using the same test in different environments (Development, Quality control, production), just change the URL, scripts would run without any issues. This will help us to run the tests in different environments with very little change. Row 2 - DB Name - If you are accessing the database through QTP, you can specify the name after creating DSN. Row 3 - Test Execute Flag - Drop Down values All,Yes,No,Empty - Execute Flag,Check,Test Case Ids These settings are applied by the control script on the control spreadsheet. Row 4 - Test Execution Status Flag - Drop Down values All,Pass,Fail,Bad Inputs, Empty - Execution Flag,Check,Test Case Ids Row 5 - Execute Specific Test Case Ids - Mention test case ids that you want to execute, "Test Case Ids" flag need to be selected in Row 3 or 4. This will override all the settings. Row 6 - Tester Name - Name of the tester who is executing the script, same name appear in control and log files after test execution. Row 7 - Release no/ Module name. Row 8 - Test Cycle - Mention test cycle. Row 9 - Exceptions exist counter - Test would automatically stop once the failed test case count reach the counter value. It doesn't make sense to keep on executing the test with 50 or more failed test cases, some thing gone wrong badly. 18-12-2019