Software testing multiple choice interview questions and answers


















Some of the popular configuration management tools are Ansible, Chef, Puppet, Terraform, Saltstack, etc. Modification request MR in software development is used by clients to change the existing functionality of a software. Enhancement report ER in software development is used by clients to add a new feature in a software.

If the software is so buggy, the first thing we need to do is to report the bugs and categories them based on Severity. If the bugs are critical bugs then it severely affects schedules and indicates deeper problems in the software development process. So you need to let the manager know about the bugs with proper documentation as evidence. Quality Assurance: Quality Assurance involves in process-oriented activities. It ensures the prevention of defects in the process used to make Software Applications.

Quality Control: Quality Control involves in product-oriented activities. It executes the program or code to identify the defects in the Software Application. Must read: Quality Assurance vs Quality Control. Verification is the process, to ensure that whether we are building the product right i. Activities involved here are Inspections, Reviews, Walk-throughs. Validation is the process, whether we are building the right product i. Activities involved in this is Testing the software application.

In static testing, we do code reviews, walkthroughs, peer reviews, and static analysis of a source code by using tools like StyleCop, ESLint, etc. Dynamic testing involves the execution of code. It validates the output with the expected outcome. It is based on applications internal code structure.

In white-box testing, an internal perspective of the system, as well as programming skills, are used to design test cases.

This testing usually was done at the unit level. Black Box Testing is a software testing method in which testers evaluate the functionality of the software under test without looking at the internal code structure. This can be applied to every level of software testing such as Unit, Integration, System and Acceptance Testing.

The tester who works on this type of testing needs to have access to design documents. This helps to create better test cases in this process. Positive Testing: It is to determine what system supposed to do. It helps to check whether the application is justifying the requirements or not. Negative Testing: It is to determine what system not supposed to do. It helps to find the defects from the software.

Test Strategy is a high-level document static document and usually developed by the project manager. It is a document that captures the approach on how we go about testing the product and achieve the goals. Documents like Test Plan are prepared by keeping this document as a base. Test plan document is a document which contains the plan for all the testing activities to be done to deliver a quality product.

It is usually prepared by the Test Lead or Test Manager. Test Suite is a collection of test cases. The test cases which are intended to test an application. Test Scenario gives the idea of what we have to test. Test Scenario is like a high-level test case. Test cases are the set of positive and negative executable steps of a test scenario which has a set of pre-conditions, test data, expected result, post-conditions and actual results.

An environment configured for testing. Test bed consists of hardware, software, network configuration, an application under test, other related software. Test Environment is the combination of hardware and software on which Test Team performs testing.

Test data is the data that is used by the testers to run the test cases. Whilst running the test cases, testers need to enter some input data. To do so, testers prepare test data. It can be prepared manually and also by using tools. For example, To test a basic login functionality having a user id, password fields.

We need to enter some data in the user id and password fields. So we need to collect some test data. A test harness is the collection of software and test data configured to test a program unit by running it under varying conditions which involves monitoring the output with the expected output.

Test Closure is the note prepared before test team formally completes the testing process. This note contains the total no. Test Completion Check: To ensure all tests should be either run or deliberately skipped and all known defects should be either fixed, deferred for a future release or accepted as a permanent restriction. Test Artifacts handover: Tests and test environments should be handed over to those responsible for maintenance testing. Known defects accepted or deferred should be documented and communicated to those who will use and support the use of the system.

Lessons learned: Analyzing lessons learned to determine changes needed for future releases and projects. In retrospective meetings, plans are established to ensure that good practices can be repeated and poor practices are not repeated. Archiving results, logs, reports, and other documents and work products in the CMS configuration management system. Test coverage helps in measuring the amount of testing performed by a set of tests. Test coverage can be done on both functional and non-functional activities.

It assists testers to create tests that cover areas which are missing. Code coverage is different from Test coverage. Code coverage is about unit testing practices that must target all areas of the code at least once.

It is usually done by developers or unit testers. It is done to check whether the individual unit or module of the source code is working properly.

Learn more about Unit Testing in detail. Integration Testing is the process of testing the interface between the two software units. Integration testing is done in three ways. Learn more about Integration Testing in detail. Verifying the completed system to ensure that the application works as intended or not. Combining all the modules once and verifying the functionality after completion of individual module testing.

Top-down and bottom-up are carried out by using dummy modules known as Stubs and Drivers. These Stubs and Drivers are used to stand in for missing components to simulate data communication between modules.

Testing takes place from top to bottom. High-level modules are tested first and then low-level modules and finally integrating the low-level modules to a high level to ensure the system is working as intended. Stubs are used as a temporary module if a module is not ready for integration testing. It is a reciprocate of the Top-Down Approach.

Testing takes place from bottom to up. Lowest level modules are tested first and then high-level modules and finally integrating the high-level modules to a low level to ensure the system is working as intended.

Drivers are used as a temporary module for integration testing. In simple words, end-to-end testing is the process of testing software from start to end. Check this End-To-End Testing guide for more information. Also, refer System Testing tutorial. In simple words, what the system actually does is functional testing.

To verify that each function of the software application behaves as specified in the requirement document. Testing all the functionalities by providing appropriate input to verify whether the actual output is matching the expected output or not.

It falls within the scope of black box testing and the testers need not concern about the source code of the application. Learn more about Functional Testing here.

In simple words, how well the system performs is non-functionality testing. Non-functional testing refers to various aspects of the software such as performance, load, stress, scalability, security, compatibility etc. It is also known as pre-production testing. Business Analysis d. Technical People e. None of these MCQ Answer: c. What does the RE represent? Risk Expense b. Related Expense c. Risk Evaluation d. Risk Exposure e. Performance Testing b.

Business Scenarios c. Static Testing d. Unit Testing e. Selenium Tutorial Video. Apache JMeter Tutorial Video. Java Tutorial Video. Python Tutorial Video. VBScript Tutorial Videos. Manual Testing 1. Test Level b. SDLC Model c. In this section, we are going to see a list of mostly asked Software Testing questions in MCQ style with an explanation of the answer for competitive exams and interviews.

These frequently asked Software testing questions are given with the correct choice of answer among various options. Explanation: The maintenance testing is performed during the development, migration, and modification cycle. It is done on the previously deployed software where its needs to be improved, altered or migrated to other hardware.

Explanation: The test documentation is the document which is created during or before the testing of a software application. The entire test execution process depends on the complication of the test document. Explanation: Software testing is a process of classifying the correctness of software by seeing its all attributes and assessing the execution of software components to find the software bugs or errors.

Explanation: SDLC defines various phases of software development and the order of execution of phases. Software development life cycle is a process that creates a structure for the development of software. Explanation: Structural testing is also known as a White box or Clear box, or Glass box testing. In structural testing, we can understand what is happening inside the application or the software.

Explanation: Boundary value analysis is one of the widely used case design techniques for black-box testing. It is used to test boundary values because the input values near the boundary have higher chances of error. Boundary values are those that contain the upper and lower limit of a variable. Explanation: It is a type of software testing, which is used to verify the functionality of the software application, whether the function is working according to the requirement specification.

It is performed as black-box testing, which verifies the functionality of the application. Explanation: Integration, Unit and System testing are various testing levels where the Unit testing is used to test each unit or an individual component of the software application. The integration testing is used only after the functional testing is completed on each module of the application. And system testing is end-to-end testing, where the testing environment is similar to the production environment.

And all activities are done to improve the quality of the software product. Explanation: As soon as the bug fixes are done, we will perform the Sanity testing. It is narrow, deep. Sanity testing's primary objective is to ensure that all the defects have been fixed and no further issues come into existence due to these changes. Explanation: In software testing, the statement coverage, decision coverage, data flow is part of the white-box testing technique.

Explanation: Alpha testing is conducted in the organization and tested by a representative group of end-users at the developer's end, where the developers observe the users and write down the problems. Alpha testing is simulated or real operational testing at an in-house site. Explanation: The test plan is a base of every software's testing. It is a detailed document, which describes software testing areas and activities.

It outlines the test strategy, objectives, test schedule, required resources human resources, software, and hardware , test estimation and test deliverables. Explanation: Whenever there is a clear relationship between modules, we go for the integration testing. And the main purpose of the integration testing level is to expose the faults at the time of interaction between integrated components or units. Explanation: Whenever the requirement does not exist, we do one round of exploratory testing.

In this testing, we will be exploring the application in all possible ways, understanding the application's flow, preparing a test document and then testing the application.

Explanation: Regression testing is used to authenticate a code change in the software that does not impact the product's existing functionality. Regression testing can be performed on a new build when there is a significant change in the original functionality. It ensures that the code still works when the changes are occurring. Explanation: Sometimes, the fundamentals of software testing define that no product has zero bugs. Explanation: Cyclomatic complexity is a software metric, which is used to measure the complexity of a program.

It gives the minimum number of paths that can generate all possible paths through the module. Explanation: Testing is a group of techniques to determine the application's correctness under the predefined script, but testing cannot find all the defects in the application.

Testing includes an examination of code and the execution of code in various environments, conditions, and all the examining aspects of the code. And When all the test cases are executing, most of the test cases must be passed. Explanation: In regression testing, once we understand the new requirements, we will perform one round of impact analysis to avoid the major risk.

The impact analysis is done by the customer based on their business knowledge , the developer based on their coding knowledge. Most importantly, it is done by the test engineer because they have product knowledge. Explanation: Usability testing is used to checks the defect in the end-user interaction of software or the product. It makes sure that the developed software is easy while using the system without facing any problem and makes end-user life easier. Explanation: The Incremental testing approach is used whenever there is a solid relationship between the dependent modules.

In this, modules are added in ascending order one by one or according to need. Generally, two or more than two modules are added and tested to control the correctness of functions. Explanation: Beta testing is an integral part of external user acceptance testing, where real users perform this testing. It is implemented after the alpha testing. Beta testing is the last phase of the testing carried out at the client's or user's end.

Explanation: When there is no specific method for identifying the error, we go for the Error guessing technique. It is totally based on the experience of the test analyst, where the tester uses the experience to guess the problematic areas of the software. Explanation: Generally, the white box testing was performed after the programming phase because this type of testing required the programming skills to design test cases.



0コメント

  • 1000 / 1000