Selenium With Java and Python For Mobile Apps & Web Apps......!

Brief About Test Automation.


What is Test Automation ?

  •  Software Test Automation is the process of automating the steps of manual test cases using an automation tool
  • Automation helps to avoid human errors and also expedite the testing process
  • Any manual task done by tool  without manual  interaction
  • Automation saves time and effort which results in reduction of the Test life
  • cycle
Benefits of Automation:
  • Consistency of Test Execution
  • Reducing cycle time of regression test cycles
  • Data driven testing
  • Repeat ability
  • Coverage
  • Reliability
  • Re usability of test 
  • Stability of AUT (Application under test)
  • No of regression cycles to be performed
  • Compatibility of App platform with testing tools
  • Cost benefit analysis (ROI)
  • Automation Test plan
  • Availability of skilled resources
  • Manual  test case & with proper testing Environment
  •  Regression Testing Cycles are long and iterative.
  • If the application is planned to have multiple releases / builds
  • If it’s a long running application where in small enhancements  / Bug Fixes keeps happening
  • Test Repeat ability is required
 There is any competition in the market
  • Frequent regression testing
  • Rapid feedback to developers
  • Virtually unlimited iterations of test case execution
  • Support for Agile and extreme development methodologies
  • Disciplined documentation of test cases
  • Customized defect reporting
  • Finding defects missed by manual testing

When should one decide to automate test cases and Automation Life Cycle:

It is not always advantageous to automate test cases. There are times when manual testing may be more appropriate. For instance, if the application’s user interface will change considerably in the near future, then any automation might need to be rewritten anyway. Also, sometimes there simply is not enough time to build test automation. For the short term, manual testing may be more effective. If an application has a very tight deadline, there is currently no test automation available, and it’s imperative that the testing get done within that time frame, then manual testing is the best solution.


Requirement   Analysis(inputmanual test case)


Tools selection


 POC (proof of concepts) //Customer Approval


 Automation  Test Plan


Segregate automatable/ non automatable test case


Framework development


Test scripts development


Peer Review


Test Data Preparation


Test scripts Execution


 Result  generation


Scripts  Maintenance 


Requirement analysis :  Understanding of manual test case & functionality of the
application , Regression test scenario are identified for the each scenario releases.


Tools Selection : Select the suitable tools which support to AUT  , and take End 2 –End  test case and create POC , just to ensure that automation can be done for the application .


Proof of concept :  To check the tool feasibility ,and helps to customer demo , and also check of the automation support  for the AUT


Automation Test Plan : A test automation plan shall be documented each releases

of xyz application, this document will covers the test automation activity for the 

release , the test automation plan consist

1. Objective

2. Scope of testing

3. Automation Methodoogy

a. Planing

b. Automaton

c. Execution

d. DashBoard reporting

e. Script execution and Maintenance

5. Test Environment

6. Acceptance Criteria

7. Test Deliverables

8. Change management processes

9. Quality management process

10. Test defectmanagement

Segregate automatable/ non automatable test case:
Regression tese case are identified and  categorized in to 2  categories
Automatable / non automatable,And it is send it customer review.


FrameWork development:
Chose suitable automation framework  and developing the main driver scripts , sub
scripts , utility , and common libraries function, logger function etc.
1. Create frame folder structure
2. Automation environment set up
3. Create generic scripts
4. Create driver scripts
5. Test data template
6. Automation report template
7. configure  with Test management tools and others open source tool  like
(Review board and CI tool , Ant , Code coverage tool etc.)


Test scripts development:
Actual Test scripts development along with project specific methods Peer
Review  :Validate the test scripts before storing in the CI Repository , Proper debugging of the scripts will be done to rectify the error in the scripts , these errors will be
corrected by peer review


1. Review the logic of the code
2. code coverage
3. Test data should not be hard coded
4. Remove all unused variable
5. Check the naming convention as per the coding standards
6. Automation scripts should identified the Bugs
7. Check the reusability factors , is its require create a separate libraries
8. Proper test step comments
9. Test case  description  with Author


Test scripts Execution:
The test execution phase will be involved executing  the identified  the test scripts
in the automation framework , and the details execution report can be send to


Factors to be considered in automation planning:

 Stability of AUT (Application under test)

 No of regression cycles to be performed

 Compatibility of App platform with testing tools

 Cost benefit analysis (ROI)

 Automation Test plan

 Availability of skilled resources

 Manual  test case & with proper testing Environment

7 comments:

  1. Here is the list of best blockchain companies with reviews & ratings. Pick the best blockchain developer for services to blockchain companies.

    ReplyDelete
  2. Thank you for your post. This is excellent information. It is amazing and wonderful to visit your site.
    Top Mobile App Development Companies in Chennai

    ReplyDelete

Translate

Popular Posts

Total Pageviews