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

Last updated on Feb 21, 2023

Latest Software Testing MCQ Objective Questions

Software Testing Question 1:

Fault base testing technique is

  1. Unit testing
  2. Beta testing
  3. Stress testing
  4. Mutation testing

Answer (Detailed Solution Below)

Option 4 : Mutation testing

Software Testing Question 1 Detailed Solution

Correct answer is Option 4Explanation:

  • Fault-based testing aims to detect certain classes of known faults.
  • Example: security testing for buffer overflows
  • Mutation Testing Fault-based testing strategy
  • It is used to evaluate test suite adequacy
  • Measures the effectiveness of test cases
  • Leads to creation of more effective tests
  • Mutation Testing Faults are introduced into the program by creating versions of the program called mutants.

Software Testing Question 2:

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 2 Detailed Solution

The correct answer: Acceptance Testing

  • Alpha and Beta testing are both forms of Acceptance Testing.
  • Acceptance Testing is the final stage of software testing, and its main objective is to determine whether a software system is suitable for release to the end users. This type of testing is performed by the end-users or stakeholders of the software, and its primary focus is on evaluating the system's functional and non-functional requirements.
  • Alpha Testing is a pre-release testing phase that is typically performed by a selected group of internal stakeholders, such as developers, testers, and managers. The purpose of Alpha Testing is to identify any significant problems with the software before it is released to the public. Alpha Testing is usually performed in-house, and the software is tested in a controlled environment to minimize the risk of data loss or security breaches.
  • Beta Testing, on the other hand, is a post-release testing phase that is performed by actual end-users of the software. Beta Testing is typically an open testing phase, where the software is made available to the public for testing purposes. The purpose of Beta Testing is to identify any remaining issues with the software and to gather feedback from real-world users to improve the overall quality of the software.
  • In conclusion, Alpha and Beta Testing are forms of Acceptance Testing, which is the final stage of software testing that focuses on evaluating the software system's suitability for release to end users. The main difference between Alpha and Beta Testing is that Alpha Testing is performed by internal stakeholders, while Beta Testing is performed by actual end-users.

Software Testing Question 3:

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 3 Detailed Solution

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.

Software Testing Question 4:

Which of the following statements is/are FALSE with respect to software testing?

S1: White-box tests are based on specifications;

S2: Black-box tests are based on code;

S3: Alpha testing is conducted at the developer's site 

  1. Only S1 and S2 are FALSE.
  2. Only S1 and S3 are FALSE.
  3. Only S2 and S3 are FALSE.
  4. All of S1, S2 and S3 are FALSE.

Answer (Detailed Solution Below)

Option 1 : Only S1 and S2 are FALSE.

Software Testing Question 4 Detailed Solution

The correct option is (1)

Only S1 and S2 are False.

Concept:-

A team of highly skilled testers conducts alpha testing at the developer's location for software that is produced as a product to be used by many customers.

Hence the statement S3 is true.

Key Points

  • Black-box tests are based on requirements and are superior at determining whether a program fits its standards and detecting omission mistakes. Hence the statement S1 is False.
  • White-box tests are based on code and are more effective in detecting crashes, out-of-bounds problems, and files that have not been closed. Hence the statement S2 is False.
  • Software testing is the process of comparing a system to the real need to find any mistakes, gaps, or missing requirements.
  • White-box testing is a method of examining and verifying the inner workings of a software system, including its code, infrastructure, and connections with other systems.
  • Any sort of software test that evaluates an application without knowledge of the internal design, structure, or implementation of the software project is known as black-box testing.

Software Testing Question 5:

Given below are two statements, one is labelled as Assertion A and the other is labelled as Reason R

Assertion A : Software developers donot do exhaustive software testing in practice.

Reason R : Even for small inputs, exhaustive testing is too computationally intensive (e.g., takes too long) to run all the tests.

In light of the above statements, choose the correct answer from the options given below

  1. Both A and R are true and R is the correct explanation of A
  2. Both A and R are true but R is NOT the correct explanation of A
  3. A is true but R is false
  4. A is false but R is true

Answer (Detailed Solution Below)

Option 1 : Both A and R are true and R is the correct explanation of A

Software Testing Question 5 Detailed Solution

The correct answer is option 1.

Concept:

  • It is a Technique used in software development that tests all the possible combinations of a data set.
  • Exhaustive Testing means complete testing,when all the testers in your team are exhausted and when all the planned tests haven been executed.
  • Exhaustive process is a testing process and it cannot be done by the developers.
  • In any project Exhaustive Testing is impossible and it is a part of Quality Assurance Testing.
  • The developers writing the code and they think that their code is perfect until and unless Test Engineers find the defects.
  • The Total number of possible combinations is too big, and it is not computationally feasible to test all of them.

The Correct Answer is Both A and R are true and R is the Correct explanation of A

Top Software Testing MCQ Objective Questions

What is the defect rate for Six sigma?

  1. 1.0 defect per million lines of code
  2. 1.4 defect per million lines of code
  3. 3.0 defect per million lines of code
  4. 3.4 defect per million lines of code

Answer (Detailed Solution Below)

Option 4 : 3.4 defect per million lines of code

Software Testing Question 6 Detailed Solution

Download Solution PDF

Concept:

  • Six Sigma is a statistical term used to measure the number of defects that processes create.
  • The term implies high-quality performance because a process performing at a Six Sigma level allows only 3.4 defects per one million opportunities.

Different sigma levels of quality would lead to the following number of defects.

  1. Three Sigma quality – This level of performance produces a defect-free product 93.32% of the time. 770 applications would be processed incorrectly and would require rework every day.
  2. Four Sigma quality – This level of performance yields a defect-free product 99.349% of the time. With four sigma quality, 73 applications would need to be corrected every day.
  3. Five Sigma quality – Five Sigma performance produces defect-free products and services 99.977% of the time. Every week the bank would need to correct 13 application errors.
  4. Six Sigma quality – Six Sigma performance produces a defect-free product 99.99966% of the time; allowing only 3.4 errors per one million opportunities. 10 applications would need to be corrected during the entire year.

Important Points:

Four sigma and six sigma levels of performance both have an error free rate over 99% of the time. However, the large volume of applications in this example makes all of the difference. With numbers this big, it turned out that the four-sigma process made 18,710 more errors than the six sigma process.

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 7 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.

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 8 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

 

 

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 9 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.

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.

What is the normal order of activities in which traditional software testing is organized ?

(a) Integration Testing

(b) System Testing

(c) Unit Testing

(d) Validation Testing

  1. (c), (a), (b), (d)
  2. (c), (a), (d), (b)
  3. (d), (c), (b), (a)
  4. (b), (d), (a), (c)

Answer (Detailed Solution Below)

Option 2 : (c), (a), (d), (b)

Software Testing Question 11 Detailed Solution

Download Solution PDF

The correct answer is "option 2".

CONCEPT:

Testing is a process of evaluating software in order to identify any errors contrary to actual requirements

Testing ensures that the software product is defect-free.

EXPLANATION:

The correct order of testing activities in software testing is:

1. Unit testing: It includes the testing of every single module or component of the software. 

2. Integration testing: It includes the testing of two or more combined modules of the software.

3. Validation testing: It answers the question, "Are we building the right product?". It ensures that client's requirements must be fulfilled by the developed software.

4. System testing: In this testing, the whole system is tested as a single component.

Hence, the correct order of testing is Unit testing, Integration testing, Validation testing & System testing.

Additional Information

Some more types of testing are:

  1. Black box testing
  2. White box testing
  3. Alpha testing
  4. Beta testing
  5. Stress testing
  6. Performance testing
  7. Regression testing
  8. Smoke testing

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 12 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 one of the following assertions concerning code inspection and code walkthrough is true?

  1. Code inspection is carried out once the code has been unit tested
  2. Code inspection and code walkthrough are synonyms
  3. Adherence to coding standards is checked during code inspection
  4. Code walkthrough is usually carried out by an independent test team

Answer (Detailed Solution Below)

Option 3 : Adherence to coding standards is checked during code inspection

Software Testing Question 13 Detailed Solution

Download Solution PDF

Concept:

Code inspection:

It is the most formal type of review, which is a kind of static testing to avoid the defect multiplication at a later stage. The main purpose of code inspection is to find defects and it can also spot any process improvement if any.  It usually involves peer examination of the code and each one has a defined set of roles.

Code walkthrough:

It is a peer review in which a programmer leads the review process and the other team members ask questions and spot possible errors against development standards and other issues. This meeting is usually led by the author of the document under review and attended by other members of the team. Review sessions may be formal or informal.

Explanation:

Option 1 (FALSE)

Reason: Unit testing is not necessary before code inspection.

Option 2 (FALSE)

Reason: Code inspection and code walkthrough are not same as explained.

Option 4 (FALSE)

Reason: Code walkthrough is done by programmer lead members or designer of development team or other interested parties.

Option 3 (TRUE)

Reason: Adherence to coding standards is checked during code inspection.

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 14 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.

Which of the following testing techniques ensures that the software product runs correctly after the changes during maintenance?

  1. Path Testing
  2. Integration Testing
  3. Unit Testing
  4. Regression Testing

Answer (Detailed Solution Below)

Option 4 : Regression Testing

Software Testing Question 15 Detailed Solution

Download Solution PDF

The correct answer is "option 4".

CONCEPT: 

Testing is a process of evaluating software in order to identify any errors contrary to actual requirements

Testing ensures that the software product is defect-free.

EXPLANATION: 

option1: Path testing is used to design the test cases.

option2: Integration testing includes the testing of two or more combined modules of the software.

option3: Unit testing includes the testing of every single module or component of the software.

option4: Regression testing is used to test modified parts of code & parts affected by the code to ensure that software doesn't have any defect after modifications.

Hence, Regression Testing ensures that the software product runs correctly after the changes during maintenance.