Estimation will always start with the manual testing process but in this automation era, the estimation techniques are applicable for test automation. Now the selenium is getting a momentum and popularity as well in the market. There are some factors which should be taken into consideration while estimating the project.
The factors that effect for estimation of selenium specific project is:
1. Scope of the project:
Scope means identifying the correct test cases for automation. The “divide and rule” strategy can work on it. Break the application in small chunks or modules the analyse each of them to come up with appropriate test case of automation.
The steps involved:
- Identify the various factors by identifying the candidate test cases for automation.
- By breaking the application into smaller modules.
- By analyse each module to identify the candidate test cases
- Calculate ROI.
2. Complexity the application:
Steps involved are:
- We may classify the size the application depend on the number of test cases that need to be automated.
- To know the size and complexity through Fibonacci series.
- To identify the verification point and also checkpoint of each test case.
We can create the definition of big/medium sized and small sized application. This definition may be different from an individual /group perspective.
For example if the application will have 300 -400 test cases to automate we can consider it has small sized application. These factors for different application have different occurrences. For some 1500 test cases automate that may be taken into consideration as small/medium scaled. Our strategy as estimating the effort will depend on these criteria.
3. Use of supporting tools/ technologies
Steps involved here are
- identify the framework and also automation that needs
- Based on the requirements, analyse and identify the tools to be used.
- Identify the dependencies/implications of using tool.
Selenium is not enough to construct a framework or even finish the automation. Selenium web driver will script the test case there may be other tasks, like in the logs taking screenshots.
4. Implementing the Framework
Here comes the tricky part J steps involved are:
- Identify the input and output of the automation suite.
- We should design the input files. This may range from simple computer text file to complex excel file. It is basically the file which can have the test data.
- Designs the folder structure depends on your input parameters and implements the reporting feature.
- Determine/implement logger in your framework.
- Implement build tool in your framework.
We have many applications or requirements as from just scripting in test automation with selenium like reading the data from file, tracking the results, tracking logs, trigger the scripts depend on the input conditions and environment etc.
5. Learning and training:
The learning selenium are going to different by other automation tool. It is involves learning a programming language simply than just a scripting language. We are combining web driver with Java, if one and core java they will be fine condition to beginning the selenium automation.
If the management has decided to travel with selenium these are learning activities which can be done in parallel with the planning activity. There will be no limit for learning these technologies to have a definite plan set for team that they can initiate their learning process definite direction and everybody will be on the similar page.
2. Environment setup
The environment setup will deal with the
- setting up the code within the test environment
- setting up code in production environment
- Writing the scripts for triggering the automated tests.
- By developing the logic for reporting.
- Creating text/excel file for entering the test data and test cases.
7. Coding/scripting and review
When we actually start writing tests there are 2 prerequisites:
- candidate test cases should be handy
- Framework is ready
Here the identify different actions that your web application does. Here the one test case at a time and identify what all the action that a particular test case does estimate hours accordingly for as per test case.
Questions
- What is scope of the project?
- What is complexity what role it plays on estimating the selenium test automation project?
One Response
Scope of the project : setting boundaries on a project and defining goals, deadlines , project deliverables. This helps to keep the project on track.
In automation this involves looking at various factors and identifying the correct test case for automation. The application is broken down into smaller modules. Each one is analyzed to determine appropriate test case of automation. ROI is then calculated.
Role of Complexity on estimating the selenium test automation project:
Complexity in test automation can be explained in terms of size of application and time, effort and skill knowledge needed to complete the automated testing.
The size of the application may be determined by the number of test cases that need to be automated. The Fibonacci series may be used to determine complexity of each test case . Verification points are identified for each test case. Based on the number of test cases, the complexity assigned by Fibonacci series and check points, the application is classified as big, medium or small sized application. This classification will defer from individual to individual and group by group depending on the skill sets and resources available. More complex the application, more the number of test cases and hence more time and effort to complete the project/application.