An interview according to wikipedia is a conversation where questions are asked and answers are provided. If we keep this in mind that what we are having is a conversation we will be more comfortable to face this activity. Before going for the interview it is always a good idea to prepare well for it. Try to find about the organisation, the kind of work it does, team, people it has. Many websites like linked in, glassdoor, and the company website itself provides this information. A little research always help. At the same time brush up your concepts, go through your resume once again, be prepared to answer questions related to your projects and your experience in them. We in these two series have listed down some important manual testing questions and an appropriate answer for them. Hope you gain from this.
Ques.1 What is SDLC?
Ans. Software Development Life Cycle refers to all the activities that are performed during software development, including – requirement analysis, designing, implementation, testing, deployment and maintenance phases.
Ques.2 Explain STLC – Software Testing life cycle.
Ans. Software testing life cycle refers to all the activities performed during testing of a software product. The phases include-
● Requirement analyses and validation – In this phase the requirements documents are analysed and validated and scope of testing is defined.
● Test planning – In this phase test plan strategy is defined, estimation of test effort is defined along with automation strategy and tool selection is done.
● Test Design and analysis – In this phase test cases are designed, test data is prepared and automation scripts are implemented.
● Test environment setup – A test environment closely simulating the real world environment is prepared.
● Test execution – The test cases are prepared, bugs are reported and retested once resolved.
● Test closure and reporting – A test closure report is prepared having the final test results summary, learnings and test metrics.
Ques.3 What are the different types of testing?
Ans. Testing can broadly be defined into two types-
● Functional testing – Functional testing involves validating the functional specifications of the system.
● Non Functional testing – Non functional testing includes testing the non-functional requirements of the system like performance, security, scalability, portability, endurance etc.
Ques.4 Give an example of Low priority-Low severity, Low priority-High severity, High priority-Low severity, High priority-High severity defects.
1. Low priority-Low severity – A spelling mistake in a page not frequently navigated by users.
2. Low priority-High severity – Application crashing in some very corner case.
3. High priority-Low severity – Slight change in logo color or spelling mistake in company name.
4. High priority-High severity – Issue with login functionality.
Ques.5 What is alpha testing?
Ans. Alpha testing is a type of acceptance testing that is performed end users at the developer site.
Ques.6 What is beta testing?
Ans. Beta testing is the testing done by end users at end user’s site. It allows users to provide direct input about the software to the development company.
Ques.7 What is performance testing?
Ans. Performance testing is a type of non-functional testing in which the performance of the system is evaluated under expected or higher load. The various performance parameters evaluated during performance testing are – response time, reliability, resource usage, scalability etc.
Ques.8 What is load testing?
Ans. Load testing is a type of performance testing which aims at finding application’s performance under expected workload. During load testing we evaluate the response time, throughput, error rate etc parameters of the application.
Ques.9 What is the difference between regression and retesting?
Ans. Regression testing is testing the application to verify that a new code change doesn’t affect the other parts of the application. Whereas, in retesting we verify if the fixed issue is resolved or not.
Ques.10 What Is Agile Testing And Why Is It Important?
Ans. Agile testing is a software testing process which evaluates a software from the customer point of view. And it is important because this does not require Dev to complete coding for starting QA. Instead, the coding and testing both goes hand in hand. However, it may require continuous customer interaction.
Ques.11 What is Accessibility Testing?
Ans. Verifying a product is accessible to the people having disabilities (deaf, blind, mentally disabled etc.).
Ques.12 What Is Test Strategy?
Ans. Test strategy is an approach to carry out the testing activity. It covers the following.
● Roles and responsibilities for each member.
● Testing scope.
● Test tools.
● Test environment.
● Testing schedule.
● Associated risks.
Ques.13 What Are The Key Elements Of A Test Plan?
Ans. A test plan contains the following main points.
● Testing objectives.
● Test scope.
● Testing the frame.
● The environment
● Reason for testing
● The criteria for entrance and exit
● Risk factors
Ques.14 How does the severity of a bug differ from its priority?
Ans. The priority defines the urgency of a bug to get fixed. There are factors to consider e.g. Fix is affecting some other functionality or the bug is blocking a certain feature.
The severity depicts the impact of a defect on the application. It determines the level of damage that could affect the integrity of the data in the system.
Ques.15 What is the main difference between Verification and Validation?
A process to ensure that the final software matches the original design. It checks whether the software meets the criteria and specification described in the requirement document.
You make sure that the product is right and as per design. It is a simple check done via walkthrough (informal) meetings.
A process to check if the product design fulfills the client’s need. It confirms whether you built the right thing.
The validation includes smoke testing, functional testing, and so on.
Ques.16 What is Agile Testing and how does it differ from the traditional waterfall or the V-model?
Ans. Agile Testing is a dynamic testing model that follows the principles of agile software development.
It demands all members of an agile team to have special skills and expertise. So that, they can ensure to deliver the expected business value at regular intervals.
In Agile environment, testing is not just a phase, but it is an activity that runs parallel to the development. Since it allows small features to deliver frequently, so testing activity should be parallel to the development activity.
Testing time is short as we are only testing small features.
Whereas in the waterfall model, we have the testing phase at the end of the development. So it requires more efforts (resources and time) to test the entire application.
Ques.17 What Are The Most Common Issues Seen In Web Testing?
Ans. The following issue may crop up when you do web testing.
1. Functional Issues.
2. Problems that occur while navigating an application.
3. Usability issues like broken links, form fields missing default focus, tab key not working and all keyboard shortcuts not fully functional.
4. Cosmetic and GUI issues.
5. Performance issues – How much time it takes to display the page to the user.
6. Load – How much load an application can handle at any point in time.
7. Stress – Load that causes an application to crash.
8. The flow of data – Storing of information entered by the user in the correct format.
9. Proper static information is not displayed along with text fields to enter data.
Ques.18 List The Main Differences Between Client-Server, The Web And Desktop Applications.
Ans. Following are the key differences between them.
1. The application runs in single memory with Front-end and Back-end in one place.
2. It has a single user only.
1. The application runs on two or more machines.
2. It is menu-driven.
3. Works in connected mode ( that means connection exists until logout).
4. It has a limited number of users.
5. it has less number of network issues as compared to the web app.
1. The application runs on two or more machines.
2. It is URL-driven.
3. It uses a web browser as the client interface.
4. Works in disconnected mode (stateless).
5. It has an unlimited number of users.
6. It has many issues like hardware compatibility, browser compatibility, version compatibility, security issues, and performance issues.
Ques.19 What Are The Different Configurations Which Tester Should Consider While Testing A Web Application?
Ans. Following key factors need consideration while testing an application.
1. Hardware platform: different users may use different platforms like Mac, Linux, and Microsoft.
2. Browser: The layout of the web page changes on the different browser. Also, browser version and plug-ins are other important factors. The resolution of the monitor along with color depth and text size is some of the other configurations.
Ques.20 Do You Know About The Tools Used For Analyzing HTTP Traffic?
Ans. Yes, we often need to track the HTTP requests that flows from the browser to the downstream web server. Also, by probing the network traffic, we can get to the details of each request/response and cross verify.
Next, many tools are available in the market for monitoring the Web traffic. I can name some of them which are open source and frequently used.
1. Wireshark – It’s to check all data that passes through the network.
2. Fiddler – It is more useful for analyzing the HTTP/s only traffic.
3. FireBug – It’s the most popular Firefox plugin which can monitor AJAX transactions. Though, it’s essential feature is to fetch the Web element locators.
Ques.21 What is a test plan?
Ans. A test plan is a formal document describing the scope of testing, the approach to be used, resources required and time estimate of carrying out the testing process. It is derived from the requirement documents(Software Requirement Specifications).
Ques.22 What is a test scenario?
Ans. A test scenario is derived from a use case. It is used for end end to end testing of a feature of an application. A single test scenario can cater multiple test cases. The scenario testing is particularly useful when there is time constraint while testing.
Ques.23 What is a test case?
Ans. A test case is used to test the conformance of an application with its requirement specifications. It is a set of conditions with pre-requisites, input values and expected results in a documented form.
Ques.24 What are some attributes of a test case?
Ans. A test case can have following attributes-
1. TestCaseId – A unique identifier of the test case.
2. Test Summary – Oneliner summary of the test case.
3. Description – Detailed description of the test case.
4. Prerequisite or pre-condition – A set of prerequisites that must be followed before executing the test steps.
5. Test Steps – Detailed steps for performing the test case.
6. Expected result – The expected result in order to pass the test.
7. Actual result – The actual result after executing the test steps.
8. Test Result – Pass/Fail status of the test execution.
9. Automation Status – Identifier of automation – whether the application is automated or not.
10. Date – The test execution date.
11. Executed by – Name of the person executing the test case.
Ques.25 Explain equivalence class partitioning.
Ans. Equivalence class partitioning is a specification based black box testing techniques. In equivalence class partitioning, set of input data that defines different test conditions are partitioned into logically similar groups such that using even a single test data from the group for testing can be considered as similar to using all the other data in that group. E.g. for testing a Square program(program that prints the square of a number- the equivalence classes can be-
Set of Negative numbers, whole numbers, decimal numbers, set of large numbers etc.
About the author
Sanah, has 6 years of experience in the field of software quality. She has worked with various MNC’s in this short span of time and has been awarded with various awards. She is ISTQB certified and is currently residing in Arizona, USA. When she is not ensuring an application is release defect free she likes to cuddle up dogs at the puppies meet or catch up movies.