Pages

Custom Search

BASICS of Automation

BASICS of Automation


 
1. What is AUTOMATION

Automation is to execute your existing regression test cases without any human intervention. And your script should keep on updating stakeholders about the current status.

For good automation, manager and resources have to plan lot of things in advance, so that your automation suite is robust, maintainable and error free.

Following are basic points you should think of:

a. Automation framework installation in new machine
b. Proper documentation for each step needed by a QA professional to start suite 
c. Easy to learn and easy to execute
d. Easy to add New Test Cases
e. Easy to Add new product
f. Easy to maintain Input data for different products
g. Good Logging for each test case, so that it can be used later if some error is found by automation. 
h. Reporting to Stakeholder at each stage
i. Scaling of your automation suite
  • Increase in number of cases
  • Increase in number of system
j. Script to check performance stats and Accuracy Stats

2. Automation Effort

There is an easy way to get automation effort needed to implement system in use. All the different steps can be divided into 4 high level verticals (Plan, Design, Test, and Maintain). 
Again it will depend how many automation engineers you have and how many machines you have to achieve your goal. 
Think of PDTM when you want to automate any application.

PDTM stands for:


P: Plan 
D: Design 
T: Test
M: Maintenance 


Below is the chart which describes 4 different levels of Automation:



2.1 Task Layout Plan:


1. Estimate Time
2. Define Scope
3. Create Test Plan
4. Form team, with different level of scripting knowledge on different tools needed in automation
5. Train team on different tools and different scripts integration
6. Finalize all features and test cases.
7. Create Final Schedule
8. Finalize on different environment your test case will run
9. Identify Test Data set.

Design:


1. Read Documents
2. Run Manual cases
3. Design Framework
4. Different feature and test cases can be selected as users will.
5. Review Framework
6. Design Reporting
7. Design Error Handling
8. Verify that different feature and test cases should be picked properly

Test:


1. Verify each test case
2. Verify test cases in batch 
3. Run test cases with different dataset
4. Introduce defects to verify that your script catches those defects.

Maintenance:


1. Make Scripts version control
2. Make changes as and when feature changes
3. Maintain Script
4. Store script in Secure location
5. Script should be updated with latest release

Automation Effort Graph


Overall effort calculation may have the following components:-

1. Test Requirement gathering & Analysis 
2. Framework design and development 
3. Test Case development (incase the available manual test cases not compatible) 
4. Script Development 
5. Integration Testing and Baseline. 
6. Test Management. 

2.2 Roles and Responsibilities

Manager


1. Estimate Time of automation
2. Understand Scope
3. Create a Plan
4. Form Team
5. Train Team with the product
6. Finalize features to automate
7. Create a Schedule
8. Check Environment Availability
9. Identify Test Data Set to be used for automation

QA Professional

Understand Phase:

1. Go through documents of application
2. Install and execute few cases manually

Design Phase:

1. Understand / Design Framework

Development Phase:

1. Write Code for Framework 
2. Write code for Reporting
3. Write code for error handling
4. Write code for important functions in library 

Coding Phase:


1. Code case and test case
2. Do thorough testing on each script
3. Run you script for several Test Data set
4. Introduce defect and check whether your script catches 

Maintenance Phase:


1. Make your script as version control
2. Make changes as and when feature changes
3. Maintain for new environment and DATA set
4. Store scripts in secure location
5. Script should match with Application Release

No comments: