Tuesday, April 14, 2020

Interview Question for Quality Assurance

(Q.) Automation Testing - Process

  • Test tool selection - phase where you identify and select the automation tool for automation testing (refer to earlier post to understand how to choose a test automation tool)
  • Define scope of automation - what are you going to automate and won't you automate (refer to earlier post to understand how to choose a test automation tool)
  • Planning, Design and Development - Once you have identified the test cases to be automated, you can design and develop the automation suite, implementing relevant design pattern and framework.
  • Test Execution - Execute the above designed test case and record the test result.
  • Maintenance - Depending on the changes the Application Under Test goes through, update the existing automation test cases.


Automation Testing Tutorial — Know How to Automate Software Testing

(Q). Automation Test Cases - Suitable vs. Unsuitable

What test cases are suitable for automation?
Test cases to be automated can be selected using the following criterion to increase the automation ROI:

  • High Risk - Business Critical test cases.
  • Test Cases that are executed repeatedly.
  • Test Cases that are very tedious or difficult to perform manually.
  • Test Cases which are time consuming.


What test cases are NOT suitable for automation?
The following test cases are not suitable for automation:

  • Test Cases that are newly designed and not executed manually at least once.
  • Test Cases for which the requirements are changing frequently.
  • Test Cases which are executed on an ad-hoc basis.
(Q). Define the scope of Automation (Theses question is Usually asked in interviews)
"How do you identify test cases for automation?" or "What are the test cases that you will automate?" or "On what basis do you choose the test cases to be automated?"


Scope of automation is the area of your Application Under Test which will be automated. The following points help determine scope:
  • Feature that are important for the business
  • Scenarios which have large amounts of data
  • Common functionalities across applications
  • Technical feasibility
  • Extent to which business components are reused
  • Complexity of test cases
  • Ability to use the same test cases for cross browser testing
(Q). Automation Testing - Best Practices

To get maximum ROI from automation, observe the following

1. Scope of Automation needs to be determined in detail before the start of the project. This sets the expectations from Automation correctly.
2. Select the right automation tool: A tool must not be selected based on its popularity but its fit to the automation requirements.
3. Choose appropriate framework
4. Scripting Standards- Standards have to be followed while writing the scripts for Automation .Some of them are to create uniform scripts, comments and indentation of the code.
5. Adequate Exception handling - How error is handled on system failure or unexpected behavior of the application.
6. User defined messages should be coded or standardized for Error Logging for testers to understand.
7. Measure metrics- Success of automation cannot be determined by comparing the manual effort with the automation effort but by also capturing the following metrics.
  • Percent of defects found
  • Time required for automation testing for each and every release cycle
  • Minimal Time taken for release   
  • Customer satisfaction Index
  • Productivity improvement
(Q). Benefits of Automation Testing

Interviewers usually ask why do you have to automate a test case? or why is automation testing important? or what are the benefits of automating a test case?

Here are some answers you can give:
  • 70% faster than the manual testing
  • Wider test coverage of application features
  • Reliable results
  • Ensure Consistency
  • Saves Time and Cost
  • Improves accuracy
  • Human Intervention is not required while executing
  • Increases Efficiency
  • Better speed in executing tests
  • Reusable test scripts
  • Test Frequently and thoroughly
  • More cycles of execution can be achieved through automation 
  • Earlier time to market
(Q). What are the different types of testing that can be automated?

It is important for you to mention why and how you automated these types with an example from your experience.
  • Smoke Testing
  • Unit Testing
  • Integration Testing
  • Functional Testing
  • Keyword Testing
  • Regression Testing
  • Data Driven Testing
  • Black Box Testing
These are the test types that could be automated ideally.

(Q). How to choose a suitable Test Automation Tool.

Selecting the right tool can be a tricky task. The following criteria will help you select the best tool for your requirements:
  • Environment Support
  • Ease of use
  • Testing of Database
  • Object identification
  • Image Testing
  • Error Recovery Testing
  • Object Mapping
  • Scripting Language Used
  • Support for various types of test - including functional, test management, mobile, etc...
  • Support for multiple testing frameworks
  • Easy to debug the automation software scripts
  • Ability to recognize objects in any environment
  • Extensive test reports and results
  • Minimize training cost of selected tools 
Tool selection is one of biggest challenges to be tackled before starting automation. First, identify the requirements, explore various tools and their capabilities, set the expectation from the tool and go for a Proof Of Concept.

(Q). What is the testing process followed in your company?

It is important you explain this with an example from your experience. Ideally your answer should contain the below points in the same workflow.

The testing process differs from company to company according to their quality standard.

Phase 1: Requirements Analysis - where the team is allocated with a module of a requirement and asked to analyse and identify the testing scope. Requirement analysis includes setting objectives, the methodology adopted while testing, features to be tested and not to be tested, risk criteria, testing schedule, multi-platform support and the resource allocation for testing. Requirements could be either documented or not documented.

Phase 2: Objectives are set for major releases

Phase 3: Target Date planned for releases

Phase 4: Test plan document is prepared by the Test Lead based on the team's analysis. This includes objectives, the methodology adopted while testing, features to be tested and not to be tested, risk criteria, testing schedule, multi-platform support and the resource allocation for testing.

Phase 5: Test condition and test case preparation according to the requirements document.

Phase 6: Test execution - this can be either done manually or automated

Phase 7: Bug reporting and bug tracking

Phase 8: After fixing test again. (Regression /retest).

Phase 9: Test Completion Report


Featured Posts