Automation frame work is nothing but the approach to automate an application in a systematic way with proper planning.
In our company we are Hybrid using (data driver and keyword driven) driven frame work in this we are maintaining the folder structure as follows:
- DRIVER SCRIPT
- CONTROL SHEET
- LIBRARY FUNCTION
- RESULT MAIN
- SELENIUM DRIVERS
1. DRIVER SCRIPT: In this folder we are maintaining the main script this script will tells the navigation of the entire frame work. It is acts like a driver, so we are calling this as driver script it will read the data from excel sheets and navigating to Library file.
2. CONTROL SHEET: It will contain one excel execution flow sheet and with all module excel sheets names. Explain here columns of the excel sheets.
3. INPUT: In this folder we are maintaining input data in the form of xl-sheet.
Sheet will contains test data along with keywords. Explain here columns of the excel sheets.
4. LIBRARY FUNCTION: In this folder we are going to maintain the reusable library functions which are used in our main script .Ex: Read_data_from_xl, write_data_to_xl, clcnt_xl etc….
5. RESULT MAIN: In this folder we are maintaining the results of all modules with the status. This are having columns like SR No, module name, status and link of the in detail results o particular module. If you want to see the results of particular module we should have to click the link which you want then it will connect to the ‘ RESULT ‘Folder and it will open the results of that particular module.
6. RESULT: In this folder we are maintaining the results of each module.
7. SELENIUM DRIVERS: In this folder we are maintain all browser drivers.
8. SNAP: In this folder we are maintain the screen shots of failed teat cases.
In driver script we are maintaining all folders path environment variables for this frame work we are maintaining two xl_sheets .control main xl_sheets having the details of module name sheet name, validation filed etc…..in our driver script we will connect to this main xl_sheets and we will find row count, column count by using the ‘used range’ method for xl object. By using these values for the first for loop we will retrieve the values of sheet name and validate fields. If the validation field having the status “Y” then it will connect the particular sheet and it will find the row count and columns count of that xl_sheets, by using these values for the second for loop we will read the test cases one by one.
In this second xl_sheets we are maintaining the columns like test case number, browser, page, keyword, test date etc…while reading the test cases one by one it will retrieve the keyword, depends upon this keyword it will execute the particular select case statements in our script that is way we are calling this as ‘key word driven frame work’.
Once the test case execution completed automatically it is updating results wise test case file. For failed test case it is putting snapshot and providing alink detailed test case wise html file. If you click this link detailed test case wise html file if you click this link than it will connect to that particular snapshot from snap folder. Once it is completed one module it will update the html file…..
Same will be repeats for every modules, once completed the execution of all.