The following are some of the most often asked questions in interviews for both
freshers and QA professionals.
1) What is Automation?
Automation is a word for applications where reduce human efforts. There are include
business process automation (BPA), IT automation, personal applications, businessrelated applications, E-commerce applications such as home automation, and more.
2) What is Automation Testing?
Automation testing is a process of using automation software tools to write a script to
perform test cases such as entering data and comparing the results, etc. is known as
Automation testing.
The goal of Automation Testing is to reduce the number of test cases to be run
manually so we can reduce human efforts
3) How do you identify the test cases which are suitable for test
automation?
Identifying the particular test cases for automation is the most important part of
automation. If the test case is stable then it is beat for automation.
4) What are the types of automation testing?
There are different types of automation testing. Like exploratory testing and some
other that you can automate
- Unit tests: The unit test is written by developers and test small units of code in isolation. Integration tests: After performed Unit testing, all module is merged and then we are performing integration testing to verify how all component work combine together.
- Regression tests: In regression testing, we are testing like updated code didn’t break any existing working functionality.
- Performance tests: Here verify that the application won’t crash under heavy load and stress.
- UI tests: Test there is all text and images are displayed properly, and there are no broken graphical elements on the page.
5) What is the difference between automation testing and
manual testing?
- Manual Testing Automation Testing A human executes the test cases one by one his/her self, without any software help it is called manual testing Test cases are executed by any automation testing tool, without human efforts It is automated testing.
- Useful for non-repeatable tests that involve human skills, involvement, and domain experience.
- Useful for repeatable test cases where the application feature under test doesn’t change frequently. Good for accessibility and usability testing, as the tester can test the software as enduser point of view. Good for regression testing to make sure that the software didn’t break after updating code changes.
- Can be slow and more time-consuming, and sometimes getting errors because of human misjudgment.
- It’s run by a computer, so there are no chances for error, and test case execution is fast. Humans can test the software in a randomized manner, and it is also known as exploratory testing. This type of testing is not possible in automation testing. UI issues and some variances are easily found by a human tester. In automation testing, we cannot cover UI issues. performance Testing is impossible to test with extreme load by a human tester Performance testing can be easily done by automation testing. The tester doesn’t need knowledge of programming. To write automation test cases, the tester needs to have programming knowledge.
6) When is a good time to automate a test?
Under the following condition, it is a good time to automate a test
• The test cases are repeatable.
• The test cases under the automation testing don’t change their functionality
again and again.
• Some test cases are more time-consuming for a human tester.
• Some test cases are connected with complicated calculations.
• The test ensures the existing functionality didn’t break after an update of the
code change.
7) When will you avoid automated testing?
In the following situation, we will avoid automation testing
• When the Application Under Test and changes come regularly
• One time test cases
• Adhoc testing
• Automation testing is not useful for exploratory testing because a human tester
can more explore the application with much better scenarios than a computer.
• Automation testing is also not used in UI testing
8) How do you choose a tool/framework for automated testing?
To perform any automation testing, we need to choose software tools or frameworks.
There are many options to choose from many alternatives.
Here some are criteria based on that we can evaluate the tools.
• Programmable (code-based) or code-less tools.
Some tools require knowledge of programming, while some tools don’t require, without
any skill of programming allow to create test cases with visual assistance. so, in that
situation, you can choose your tool based on your team’s experience and skill-set.
• Commercial vs. Open Source.
There is a more difference in the price of the tools it is based on the feature which they
are provided. Most commercial tools are more expensive, but they get tech support if
you are facing any issue.
Open-Source software is free, but you have to search if you are in trouble.
• Ease of use.
Some Automation testing tools are difficult to using and required training before using
this tool. Some are easy to understand we can use without any training.
Some of the most famous automation tools like Katalon Studio, Selenium, UFT,
TestComplete, Testim, etc., and many more. You can choose anyone based on the
requirement of your project, assess the team’s skills, the experience of all team
members, and comfort with the tool.
9) What are the different parts of a test automation framework?
Below is the different part of automation framework
Test Data Management
Generating test data is the main problem of automation testing.
A good test case
automation framework is making it easy to build test data for the application at the
testing time
Testing Libraries
A Good automation framework provides libraries so test management make easy and
also support different types of testing like integration testing, unit testing, and end to
end testing
Testing Tools
1. Includes any GUI or command-line tools that make it useful for testers to run
the set of tests again and again.
2. Testing tools are also useful for a tester to perform load and stress testing
10) Should you automate all testing?
We can not automate all types of testing. Some types of testing are only done by
human testers like interface testing, usability testing, and accessibility testing.
Exploratory testing is another type of testing where a human tester can test better than
automation testing. A human can provide more scenarios and tester more explore the
software randomly and tried to find UI bugs easily as compare to automation testing.
Automation testing is useful for large projects where complex calculations and
repeated test cases are available.
-
11) What is a test environment?
A test environment is a computer or a server on which a tester can test the software
or applications. After the developer team builds the software, the tester installs it on
this computer or on a server with all its required dependencies, like the production
environment. This allows the tester to test the software or application with the realworld scenario.
Actually, the test environment is a copy of the production or live environment.
These allow the tester can make a duplicate copy to reproduce the same bug for
reporting and the test can provide the exact steps to a developer to fix them.
Below are the some of prerequisites for a good test environment:
• A test server has a similar configuration, including software and hardware to
match with the production environment
• Sample test data for testing with software.
• Test database with real data, it can be a copy of the production database.
12) What is browser automation?
Browser automation is one of the techniques for launching a web application in a
browser programmatically and executing different actions by automation, just like a
regular user would. Browser testing gives you the speed and efficiency that human
testers cannot provide. There is a different popular tool for browser testing like
Protractor, Cypress, and Selenium.
13) What is automated regression testing?
Software is never completed. The developers are continuedly updating features,
functions and fixing bugs So because of that chance to break existing working
functionality. And because of that tester need to perform regression testing.
Regression testing is a testing technique where makes sure that updated code is not
affected by the existing working functionality and didn’t break any working functionality.
The main foal of regression testing is to make sure that previously tested and working
functionality still works fine after adding new changes in code.
In automation regression testing, the tester runs the regression suit after every new
release of the software. If a test case is a pass then the tester can move to the other
type of testing and if a test case is failed then wait until the developer fixes this broken
functionality.
14) What are some risks associated with automated testing?
There is more benefit of automation testing like efficient and fast, repeatable tests and
also there are few risks with automation testing which are described below:
Negative ROI
• The automated test requires more code and expensive tools. Testers need to
spend more time learning and implementing automated tests.
• As per the experience, the team realizes that the testing strategy, while the
software is complex with continually changing features. Tester also has to keep
changes continually.
Playing catch-up with the technology.
Before start the Automation testing, the testing team spend more time learning and try
to code with different tools and technologies because experience is more required in
automation testing and then realize its original promised value
Maintenance Risk
• Testers need to maintain code with all changing functionality and fixing the
bugs.
• Instead of creating new features most of the time tester working on that test
case which is failed
15) What are the different phases in an automation testing life
cycle?
Automation testing has a life cycle same as the software testing life cycle and software
development life cycle. Some of the major phases of the automation testing life
cycle are described below:
1. Analysis of the scope of the testing.
2. Choose the automation framework and tools for the start automation.
3. Design test plan and test case execution strategy.
4. Set up test environment as per requirement.
5. Start development and execution of the test cases.
6. Generate test report and verify it.
16) Can you achieve 100% automation?
Achieve 100% automation is very difficult because there would be many different
scenarios under the test cases. And more test cases are not executed for a long time.
And will not add value to these test cases into an automated suit.
17) How to decide the tool that you should use for Automation
testing in your projects?
1. You have to understand the project requirements and identify the test scenario
which you want to automate.
2. Found best tools that support your project requirement.
3. Decide your budget for automation tools and as per that select tools under your
budget.
4. Identify skilled resources if you have If you don’t have then need to identify the
cost of training of your existing resources or hiring new resource if resources
are not available.
18) What is a framework?
A framework is a bunch of the design of the whole automation suite. It is additionally
a rule, which whenever followed can bring about construction that is not difficult to
keep up with and improve.
The Rules Include:
• Coding principles.
• Taking care of the test information
• Managing and taking care of the components of the framework
• Managing of environment documents and properties record
• Reporting of information
• Dealing with logs
19) What are the attributes of a good framework?
Read in the brief about attributes below:
• Modular: The structure ought to be versatile to change. A Person who is
analyzing and testing should have the option to adjust the contents according
to the climate or login data change.
• Reusable: The regularly utilized technique or utilities ought to be written in a
standard file that is available to every one of the contents.
• Consistent: The suite ought to be written in a steady way by following all the
acknowledged coding rehearses.
• Independent: The contents ought to be written so that they are free of one
another.
• Logger: It is a great idea to have executed the logging highlight in the structure.
This would help in the event that our contents run for longer hours (say daily
mode), if the content fails anytime, having the log document will assist us with
identifying the area alongside the sort of defect.
• Reporting: It is a great idea to have the detailing highlight consequently
inserted into the system. When the code run, we can have the outcomes and
reports sent through email.
20) What are the various types of automation tools you are
familiar with?
There are two types of automation tools available in the market which are as follow:
• Open Source: It includes Selenium, JMeter, etc.
• Paid Tools: It includes QTP, Load Runner, Ranorex, etc.
21) What are the different types of frameworks?
Different types of automation frameworks are as follow:
• Keyword-driven structure
• Data-driven structure
• Hybrid structure
• Linear Structure
22) Can you give some examples of effective coding methods
for automation?
Good practices of coding include:
• Add Proper Comments
• Distinguish the reusable techniques and add them in a different file.
• Follow the language-particular coding protocol.
• Keep up with the test information in a different record.
• Run your contents routinely
23) Is there any type of test that you think should not be
automated?
• Tests that are only rarely executed.
• Exploratory testing
• Test which is executed immediately when perform manually.
24) What criteria do you use to determine which automation tool
is best for you?
Below factors help in selecting the best automation tools:
• The range of the application which we need to automate.
• The board overhead like expense and financial plan.
• Time to learn and execute the apparatus.
• Sort of help accessible for the device.
• Limitation of the tool.
25) What do you think is preventing testers from automation
testing?
Is there a way to overcome it?
The significant obstacle for analyser’s is to study programming/coding when they need
to automate. Since analyser’s don’t code, adjusting to coding is a bit hard for
analyser’s.
Way to overcome it are as follow:
• Cooperating with designers while automating.
• Taking into account that automation is the obligation of the entire group and not
just of the analyser’s.
• Giving a devoted time and priority to automation.
26) What is an Automation testing framework?
An automation testing structure is liable for making a test utilization with an instrument
to interface with the application under test, take input from a document, execute the
experiments and create the reports for test execution. An automation testing system
ought to be autonomous of the application and it ought to be not difficult to utilize, alter
or expand.
27) What are the key components of an automated testing
framework?
Below are important modules of the automation testing framework:
• Test Assertion Tools: This device will give a verification guarantee to testing
the normal qualities in the application under test. For Example. TestNG, Junit,
and so forth.
• Data Setup: Each experiment needs to take the client information either from
the data set or from a record. So this module ought to take care of the data that
is utilizing in the script.
• Build Management Tool: Structure should be created and sent for the
utilization of making test scripts.
• Continuous Integration Tool: This device is needed for coordinating and
sending the progressions done in the structure at every cycle.
• Reporting Tool: This device is used to obtain end results.
• Logging Tool: This device helps in the event that our contents run for longer
hours (say daily mode), if the content fails anytime, having the log document
will assist us with identifying the area alongside the sort of defect.
28) Explain some Automation testing tools?
Below are the popular automation testing tools:
• Selenium: Selenium is a test system for web application automation testing.
It
upholds different programs and is OS-free. Selenium likewise supports different
programming dialects like Java, C#, PHP, Ruby, and Perl, and so forth.
• UFT: It gives a wide scope of elements like APIs, web administrations, and so
on and furthermore supports numerous stages like work areas, web, and
portable.
UFT scripts are written in the visual fundamental prearranging
language.
• Appium: Appium is an open-source versatile application testing apparatus. It
is utilized to test cross-stage, hybrid, native, and online portable applications.
• Cucumber: Cucumber is an open-source conduct-driven improvement device.
It is utilized for electronic application automation testing and supports dialects
like ruby, java, scala so on.

No comments:
Post a Comment