This section includes 7 InterviewSolutions, each offering curated multiple-choice questions to sharpen your Current Affairs knowledge and support exam preparation. Choose a topic below to get started.
| 1. |
What is the test automation pyramid? |
|
Answer» Martin Fowler first proposed the concept of the test automation pyramid[1] in 2012. It’s a technique to think about how you should use different types of test automation to get the maximum value out of them. GUI testing is very BRITTLE. User interfaces are constantly changing. An enhancement to the software easily breaks up many tests, which need to be updated, causing ADDITIONAL work for the team. Testing the UI is slow and results in increased build times. You can perform it on a few machines on which you have the license for the GUI testing tool. Hence, the test pyramid ARGUES that you should have more AUTOMATED unit tests than through the traditional UI-automation tests. It also has an intermediate layer of service tests that can provide many benefits of end-to-end UI tests without the complexities of dealing with the UI FRAMEWORKS. |
|
| 2. |
What are some of the best practices in test automation? |
|
Answer» Here are some of the best practices a software development and the testing team should use to ensure quality software.
|
|
| 3. |
What is automated regression testing? |
|
Answer» Software is never done. The developers are constantly adding new features, functions, fixing bugs, and so on. There is a chance that all this new code might break the existing functionality that was working. Users DISLIKE using a product that is broken after they DOWNLOAD and INSTALL a new release. They expect a CONSISTENT and reliable experience from the software, no matter which version they are using. They also expect that previously working features will keep on working and won't break in the future. Regression testing is a testing technique where a tester makes sure that the new features didn't break any existing functionality. Its goal is to ensure that previously developed and tested functionality still works after adding new code. When a tester performs the regression testing automatically using testing frameworks and TOOLS, it's known as automated regression testing. In automated regression testing, a tester runs the suite of regression tests after each new release of the software. If the tests pass, then the tester continues with other types of testing. However, if it fails, then there is no point in further proceeding with tests until the developers fix the broken regression tests. Hence, they also act as a time-saver for the tester and ensure quality in software before shipping it. |
|
| 4. |
Why do you need cross-browser testing? |
|
Answer» With web applications, you can’t GUARANTEE the browsers/platforms/devices your users might use to access your software. Some users could be using Google Chrome on their ANDROID phones, some might use Firefox on a Windows desktop machine, or others could use Safari on their Macbooks. Cross-browser testing ensures that your web application works as expected on different versions of popular browsers on multiple platforms and devices. It ensures that the users get the same experience and features irrespective of which browser they use. It helps to reach a wide range of users, allows the users to switch browsers and devices, and STILL get the same user experience, increasing customer SATISFACTION and building a loyal user BASE. |
|
| 5. |
What is cross-browser testing? |
|
Answer» With web applications, you don’t know in advance which browsers your users will use. Hence, it’s crucial to test the web application or the website on multiple MAJOR browsers running on different operating systems. Cross-browser testing is a type of browser automation testing where the tester verifies if the web application will work smoothly on different browsers. Some of the popular browsers include Google Chrome, Mozilla FIREFOX, Internet Explorer, Safari, etc. The goal of the cross-browser testing is to launch the application on VARIOUS browsers running on different operating systems, e.g. WINDOWS, Mac OS, Linux, etc., and verify that the application works as expected. The tester looks for the design/rendering issues, the functionality of the application, and device-specific functionality. Though it can be typically, sophisticated tools exist that allow the testers to automate cross-browser testing. Some examples include Selenium BOX, BrowserStack, Browsershots, LambdaTest, etc. |
|
| 6. |
What is browser automation? |
|
Answer» Browser automation is the technique of programmatically launching a web APPLICATION in a browser and automatically executing various actions, just as a regular USER would. Browser testing gives you the speed and efficiency that would be impossible for a human tester. Protractor, Cypress, and Selenium are some of the popular tools used in-browser testing. Some of the activities performed in browser automation are as FOLLOWS:
|
|
| 7. |
What is a test environment? |
|
Answer» A test environment is a computer or a server on which a tester tests the software. After the team builds the software, the tester installs it on this computer with all its DEPENDENCIES, just like the production environment. This allows the tester to test the software in a real-world scenario. A test environment enables the tester to create RELIABLE test SETUPS which are identical whenever a new version of the software is released. The test environment includes the test bed, which is the test data using which the tester will test the software. This data helps the tester to verify test cases that need a particular setup. Typically, the test environment is an identical copy of the production environment. Having a duplicate copy allows the tester to reliably reproduce the bugs reported by the CUSTOMERS and provide the exact steps to the developers to fix them. Here are some prerequisites for a good test environment:
|
|
| 8. |
Should you automate all testing? |
|
Answer» Although test automation has its advantages, it is not practical to automate all kinds of testing. Some testing can be DONE only by a human tester, such as user interface testing, usability, and accessibility testing. Exploratory testing is another type of testing where a human tester provides more value than an automated test. In exploratory testing, a tester EXPLORES the software randomly, just as an end-user would do, and tries to find the bugs or UI inconsistencies or any hidden problems that developers MIGHT have overlooked. Automated testing is helpful for LARGE projects involving complicated calculations and for repeatable test cases. For features that change often and rarely executed test cases, a human tester provides a BIGGER ROI than automation would. |
|
| 9. |
What are the different parts of a test automation framework? |
|
Answer» A test automation framework makes it easy to perform automation testing for your software. Here are some components of a test automation framework.
|
|
| 10. |
How do you choose a tool/framework for automated testing? |
|
Answer» To perform any automation testing, you NEED to rely on software tools or frameworks. There are plenty of options to CHOOSE from many alternatives. Here are some CRITERIA based on which one can EVALUATE these tools.
Some of the most popular automation tools include Selenium, Katalon Studio, UFT, TestComplete, Testim, etc., and many more. When choosing one, you should consider the testing requirements for your project, consult your team, and assess their skills, experience, and comfort with the tool. You should also periodically assess the return on investment from the tool you choose and be prepared to switch if needed. |
|
| 11. |
When will you avoid automated testing? |
|
Answer» Though automation has its advantages, it’s not a GOOD idea to automate all of your testings. Here are some scenarios when a human tester can do a much better job of testing the software than an automated test suite.
|
|
| 12. |
When is a good time to automate a test? |
|
Answer» A test is a good candidate for automation under the FOLLOWING conditions. |
|
| 13. |
What’s the difference between manual testing and automated testing? |
||||||||||||||||||
Answer»
|
|||||||||||||||||||
| 14. |
What are the types of automation testing? |
|
Answer» There are different testing TECHNIQUES, but you can not automate them all. For example, exploratory testing. Here are some testing techniques that you can automate.
|
|
| 15. |
What is automation testing? |
|
Answer» Automation testing is a software testing strategy in which a TESTER programmatically runs the tests USING a tool or a framework instead of MANUALLY going through the test cases and executing them one by one. The primary goal of automated testing is to save time, effort, and money on repetitive tests that don’t change frequently. Automation testing helps teams and organizations automate the testing efforts, in turn reducing the need for human intervention and thus achieving greater speed, reliability, and efficiency. It ALSO helps speed up the development cycle, as the DEVELOPERS get quick feedback and can iterate quickly. |
|