Software Testing MCQ Quiz - Objective Question with Answer for Software Testing - Download Free PDF

Last updated on Apr 17, 2024

Software testing involves evaluating a software or system to identify differences between expected and actual results and ensure it meets the specified requirements. Software testing is an important process that helps identify defects, validate software functionality and verify that it meets business and user requirements. Candidates appearing for any competitive exam with Engineering as one of its components must solve these Software Testing MCQs to assess their knowledge of various testing techniques, test types, defect identification, debugging and test strategies. Start attempting Software Testing MCQs now!

Latest Software Testing MCQ Objective Questions

Software Testing Question 1:

In which testing approach are all system modules integrated simultaneously and then tested as a complete system?

  1. Top-down testing
  2. Bottom-up testing
  3. Big-Bang testing
  4. Sandwich testing

Answer (Detailed Solution Below)

Option 3 : Big-Bang testing

Software Testing Question 1 Detailed Solution

The correct answer is Big-Bang testing

Key Points

  • Big-Bang testing is an approach where the various components or modules of a system are integrated all at once, and then the entire system is tested as a whole.
  • This approach does not involve incremental testing or integration of modules but waits until all components are ready for integration.
  • While this method can be efficient in terms of planning, it might lead to difficulties in isolating and fixing defects since everything is integrated and tested simultaneously.

Software Testing Question 2:

The Output comparators are used in

  1. dynamic testing of single and multiple module
  2. static testing of single and multiple module
  3. dynamic testing of single module
  4. static testing of single module

Answer (Detailed Solution Below)

Option 1 : dynamic testing of single and multiple module

Software Testing Question 2 Detailed Solution

The correct answer is dynamic testing of single and multiple module

Key Points

  • Dynamic testing involves executing the software with various inputs to ensure it behaves as expected.
  • Output comparators are tools or mechanisms used to automatically compare actual outputs of the software under test against the expected outputs.
  • This can be done for both individual modules (to ensure each module functions correctly on its own) and for multiple modules interacting together (to ensure the integrated system behaves as expected).

Software Testing Question 3:

Which of the following testing techniques can be represented through decision tables? 

  1. Compilation testing
  2. Conditional logic testing 
  3. Stress testing 
  4. Performance testing

Answer (Detailed Solution Below)

Option 2 : Conditional logic testing 

Software Testing Question 3 Detailed Solution

The correct answer is Conditional logic testing 

Key Points

  • Decision tables are particularly useful for outlining and testing conditions (causes) and their effects (outcomes), which is why they are well-suited for conditional logic testing. They present a structured way to visualize all possible scenarios and their expected outcomes.

Software Testing Question 4:

What is the main goal of System Testing? 

  1. Testing individual components in isolation
  2. Testing the integration between different software components
  3. Testing software functionality from the user's perspective
  4. Identifying defects in the source code

Answer (Detailed Solution Below)

Option 3 : Testing software functionality from the user's perspective

Software Testing Question 4 Detailed Solution

The correct answer is Testing software functionality from the user's perspective

Key Points

  • System Testing aims to verify the entire software system's functionality and behavior from the user's perspective. It ensures that the integrated components work together correctly, meeting specified requirements and confirming readiness for deployment.

 Additional Information

  • System Testing:
    • Focus: Tests the entire integrated system.
    • Scope: Evaluates functional and non-functional aspects.
    • Purpose: Ensures the system meets specified requirements.

Software Testing Question 5:

Which testing approach involves testing individual components or units of code? 

  1. Integration Testing
  2. System Testing
  3. Unit Testing
  4. Acceptance Testing

Answer (Detailed Solution Below)

Option 3 : Unit Testing

Software Testing Question 5 Detailed Solution

The correct answer is Unit Testing

Key Points

  • Unit Testing:
    • Focus: Tests individual units or components.
    • Scope: Isolates and verifies the smallest parts of the software.
    • Purpose: Ensures each unit functions as intended.

Additional Information

  • Integration Testing:
    • Focus: Tests interactions between integrated components.
    • Scope: Checks interfaces and collaborations between components.
    • Purpose: Verifies components work together seamlessly.
  • System Testing:
    • Focus: Tests the entire integrated system.
    • Scope: Evaluates functional and non-functional aspects.
    • Purpose: Ensures the system meets specified requirements.
  • Acceptance Testing:
    • Focus: Determines if the system meets business requirements.
    • Scope: Validates compliance with user expectations.
    • Purpose: Confirms the system is ready for deployment and user acceptance.

Top Software Testing MCQ Objective Questions

A multimedia project is said to be _________ and user-interactive when users are given navigational control.

  1. Hypertext
  2. Non-linear
  3. Linear
  4. Secure

Answer (Detailed Solution Below)

Option 2 : Non-linear

Software Testing Question 6 Detailed Solution

Download Solution PDF

Concept:

Mutlimedia means combination of text, audio, video, graphics, and animation. Mutlimedia project are the multimedia materials which are presented on computer screen.

Explanation:

Phases of a multimedia project are : planning, designing , testing and delivering. 

Some points about multimedia project : 

  • Interactive mutlimedia gives the navigational controls to the user. It control what elements are to be delivered.
  • It requires creative skills, tools and organization talent to create mutlimedia projects.
  • There are two categories in multimedia : linear and non - linear.
  • Linear multimedia is without any navigational control example cinema.
  • Non - linear provides user interactivity to control progress. Example : computer game.
  • Mutlimedia system must be integrated, handled digitally and usually interactive.
  • Mutlimedia can be delivered using optical disk, web or distributed network.

Alpha and Beta testing are forms of

  1. White-Box Testing
  2. Black-Box Testing
  3. Acceptance Testing
  4. System Testing

Answer (Detailed Solution Below)

Option 3 : Acceptance Testing

Software Testing Question 7 Detailed Solution

Download Solution PDF

The correct answer: Acceptance Testing

Alpha and Beta testing are forms of:

Acceptance Testing

Important Points

Alpha Testing is usually done by internal staff before the product is released to external testers. It is a type of acceptance testing that's done in a lab environment and not by the end users. It helps identify all possible issues and problems in the system before it goes for Beta testing. 

Beta Testing is performed by actual users or potential customers in their own environment. It is the second phase of testing in which a sampling of the intended audience tries the product out before it is officially released to the general public. This is the final test before shipping the product. Problems that were not discovered during Alpha testing may be identified here.

These types of tests are done to make sure that the system is working as expected and will be accepted by the end users. They are types of User Acceptance Testing (UAT) and are very important in software development processes.

In unit testing of a module, it is found that for a set of test data, at the maximum 90% of the code alone were tested with the probability of success 0.9. What is the reliability of the module ?

  1. greater than 0.9
  2. Equal to 0.9
  3. At most 0.81
  4. At least 0.81

Answer (Detailed Solution Below)

Option 3 : At most 0.81

Software Testing Question 8 Detailed Solution

Download Solution PDF

Data

code testes in unit testing = t =90% = 0.9

probability of success = p = 0.9

Calculation

Reliability ≤  t × p = 0.9 ×0.9 = 0.81

Threfere, the reliability of the module is at most 0.81

In context of requirement analysis in software engineering, which of the following is not a type of 'non functional requirements'?

  1. Product Requirements
  2. Organizational Requirements
  3. External Requirements
  4. Umbrella Requirements

Answer (Detailed Solution Below)

Option 4 : Umbrella Requirements

Software Testing Question 9 Detailed Solution

Download Solution PDF

NON-FUNCTIONAL REQUIREMENT (NFR)

It specifies the quality attribute of a software system. They judge the software system based on Responsiveness, Usability, Security, Portability, and other non-functional standards that are critical to the success of the software system

Product requirements

Requirements specify that the delivered product must behave in a particular way, e.g. execution speed, reliability, etc.

Organizational requirements

Requirements which are a consequence of organizational policies and procedures, e.g. process standards used, implementation requirements, etc.

External requirement

Requirements which arise from factors which are external to the system and its development process, e.g. interoperability requirements, a legislative requirement

F1 Raju 4.12.20 Pallavi D2

 

 

Debugger is a program that:

  1. Allows to examine and modify the contents of registers
  2. Allows to set breakpoints, execute a segment of program and display contents of register
  3. Does not allow execution of a segment of program
  4. All the options

Answer (Detailed Solution Below)

Option 2 : Allows to set breakpoints, execute a segment of program and display contents of register

Software Testing Question 10 Detailed Solution

Download Solution PDF

Debugger:

  • A debugger is a computer program used to test and debug target programs.
  • The main use of a debugger is to run the target program under controlled conditions that permit the programmer to track its operations in progress and monitor changes in computer resources that may indicate malfunctioning code.
  • Typical debugging facilities include the ability to run or halt the target program at specific points, display the contents of memory, CPU registers or storage, and modify memory or register contents in order to enter selected test data that might be a cause of faulty program execution.

Which of the following is/are the types of testing?

  1. Regression Testing
  2. Smoke Testing
  3. Stress Testing
  4. All of the options

Answer (Detailed Solution Below)

Option 4 : All of the options

Software Testing Question 11 Detailed Solution

Download Solution PDF

Concept:

Regression Testing

It is defined as a type of software testing to confirm that a recent program or code change has not adversely affected existing features. Regression Testing is nothing but a full or partial selection of already executed test cases which are re-executed to ensure existing functionalities work fine

Smoke Testing 

It is a software testing technique performed post software build to verify that the critical functionalities of software are working fine. It is executed before any detailed functional or regression tests are executed.

Stress testing

It is a software testing activity that determines the robustness of software by testing beyond the limits of normal operation. Stress testing is particularly important for "mission critical" software, but is used for all types of software

Hence Option 4 is correct

Which testing focuses on heavily testing of one particular module?

  1. Fuzz testing
  2. Inter system testing
  3. Breadth testing
  4. Gorilla testing

Answer (Detailed Solution Below)

Option 4 : Gorilla testing

Software Testing Question 12 Detailed Solution

Download Solution PDF

The correct option is (4)

Gorilla testing

Concept:-

This kind of software testing methodology places a lot of emphasis on thoroughly evaluating one specific module. By having various testing teams evaluate the same capability, quality assurance teams examine one or a few functionalities fully or exhaustively to discover any deviations.

Key Points

  • Gorilla testing is a method of software testing in which a program module is routinely examined to ensure that it is working correctly and is free of flaws.
  • A module can be assessed in exactly the same manner 100 times. Gorilla testing is so frequently referred to as "Frustrating Testing."

Additional InformationFuzz testing:- An automated software testing technique called fuzzing introduces erroneous, abnormal, or unexpected inputs into a system in order to detect flaws and vulnerabilities in the software.

Breadth Testing:- It is a test suite that confirms a product's complete functionality but does not thoroughly evaluate all of the features.

Inter-system testing:- Inter-system testing is the process of evaluating the integration points and functionality between various systems that share a common data source.

Consider a software program that is artificially seeded with 100 faults. While testing this program, 159 faults are detected, out of which 75 faults are from those artificially seeded faults. Assuming that both real and seeded faults are of same nature and have same distribution, the estimated number of undetected real faults is ______.

  1. 28
  2. 175
  3. 56
  4. 84

Answer (Detailed Solution Below)

Option 1 : 28

Software Testing Question 13 Detailed Solution

Download Solution PDF

The correct answer is option 1.

Key Points

  • Total number of faults found = 159
  • Real faults detected among all detected faults = 159 - 75 = 84
  • Since probability distribution is the same, the total number of real  faults is (100/75)*84 = 112
  • Undetected real faults = 112- 84 = 28 

Alternate Method

  • 75% of defects are observed because of 75 of 100 artificially seeded defects. Given that the total faults detected = 159
  • Real faults detected among all detected faults = 159 – 75= 84
  • Since probability distribution is the same, the total number of real faults is (100/75)*84 = 112
    Therefore undetected real faults = 112-84 = 28.

Hence the correct answer is 28.

Which of the following testing strategy was devised for testing real-time systems?

  1. Bottom-up testing
  2. Back-to-back testing
  3. Top-down testing
  4. Thread testing

Answer (Detailed Solution Below)

Option 4 : Thread testing

Software Testing Question 14 Detailed Solution

Download Solution PDF

Important Points

Thread testing

Thread Testing is one such type of software testing that is usually conducted during the early stages of System Integration Testing. This type of software testing technique is immensely useful in scenarios where an application is of a type that uses a client-server architecture. Thread testing is a vital part of integration testing and is usually performed for testing real-time systems. The main focus of this type of testing is to check the data communication amongst the multiple modules coded by different programmers.

Additional Information

Bottom-up testing

It is an approach to integrated testing where the lowest level components are tested first, then used to facilitate the testing of higher-level components. The process is repeated until the component at the top of the hierarchy is tested.

Back-to-back testing

It is a type of testing which is conducted if there are two or more variants of components with similar functionality. It is also called Comparison Testing. The aim of back-to-back testing is to compare the results to check if there are any divergences in the work.

Top-down testing 

It is an integration testing technique used in order to simulate the behaviors of the lower-level modules that are not yet integrated. Stubs are the modules that act as temporary replacement for a called module and give the same output as that of the actual product.

Hence Option 4 is correct

Which of the following is/are behavioral testing technique(s) ?

(A) Equivalence Partitioning

(B) Graph-Based Teating Method

(C) Boundery Value Analysis

(D) Data flow Testing

(E) Loop Testing

Choose the correct answer from the options given below: 

  1. (B) and (D) only
  2. (A), (B) and (C) only
  3. (D) and (E) only
  4. (A), (C) and (E) only

Answer (Detailed Solution Below)

Option 2 : (A), (B) and (C) only

Software Testing Question 15 Detailed Solution

Download Solution PDF

The correct answer is option 2.

Key Points

Black-box testing, also known as behavioural testing, focuses on the software's functional specifications. In other words, black-box testing allows a software developer to create sets of input conditions that completely exercise all of a program's functional requirements. The methods for behavioural testing are as follows.

  1. graph-based testing methods
  2. equivalence partitioning
  3. boundary value analysis
  4. comparison testing
  5. orthogonal array testing

 ∴ Hence the correct answer is (A), (B) and (C) only.

Get Free Access Now