KEMBAR78
Software Testing Course Outline | PDF | Software Testing | Software Bug
0% found this document useful (0 votes)
8 views17 pages

Software Testing Course Outline

The document outlines the fundamentals of software testing, covering various testing types such as boundary testing, unit testing, integration testing, and more. It includes a comprehensive collection of multiple-choice questions designed to enhance knowledge in software testing concepts and practices. Additionally, it discusses the roles of different testing methodologies and tools used in the software development lifecycle.

Uploaded by

sky g
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views17 pages

Software Testing Course Outline

The document outlines the fundamentals of software testing, covering various testing types such as boundary testing, unit testing, integration testing, and more. It includes a comprehensive collection of multiple-choice questions designed to enhance knowledge in software testing concepts and practices. Additionally, it discusses the roles of different testing methodologies and tools used in the software development lifecycle.

Uploaded by

sky g
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 17

1 Software Testing Fundamentals

2 Defects Versus Failures


3 Test Case Design
Boundary Testing
Boundary testing is the process of testing between extreme ends or boundaries between
4 partitions of the input values. So these extreme ends like start- end, lower- upper,
maximum- minimum, just inside-just outside values are called boundary values and
the testing is called "boundary testing".
5 Structural Testing
6 White Box Testing
7 Basic Path Testing
8 Control Structure Testing
9 Black Box Testing
10 Testing OOA
11 OOD Models
12 OO Testing Strategies
13 Interclass Test Case Design
14 Unit Testing
15 Integration Testing
16 Validation Testing
17 System Testing
18 Debugging
19 Developing The Test Plan
20 Profiling
21 Test Driven Development
22 State Based Testing
23 Configuration Testing
24 Compatibility Testing
25 Web Site Testing
26 Alpha, Beta And Acceptance Testing
27 Coverage Criteria
28 Test Instrumentation And Tools
29 Managing The Test Process
30 Problem Reporting, Tracking And Analysis

Course Outline
for
Software Testing
Software Testing MCQ (Multiple Choice
Questions)
Boost your software testing knowledge with our comprehensive Software Testing
MCQ collection. These multiple-choice questions cover important topics like Manual
Testing, Automation Testing, Regression Testing, Black Box Testing, White Box
Testing, Performance Testing, and more. Perfect for students, beginners, and
professionals, these questions will help you learn key concepts, test your knowledge,
and build your skills in software testing.
1. What is Software Testing?
a) Analysing documentation
b) Writing code
c) Executing a system to identify bugs and errors
d) Compiling source code
View Answer
Answer: c
Explanation: Software testing is the process of running a system or application to find
bugs, errors, and defects. The main goal is to ensure that the software meets all
functional and technical requirements and performs as expected in different scenarios.

2. What is a test case?


a) A list of all the bugs in the software
b) A document that describes how a test should be executed
c) A report of testing results
d) The final version of the software
View Answer
Answer: b
Explanation: A test case is a set of conditions or variables used to determine if a
system behaves as expected.

3. What is Unit Testing?


a) Testing individual components in isolation
b) Testing the system’s performance
c) Testing database interactions
d) Testing the user interface
View Answer
Answer: a
Explanation: Unit Testing focuses on verifying the smallest units of code, like functions
or methods, independently. It ensures that each component behaves as expected, which
helps identify issues early in the development process, making it easier to fix bugs
before integration.

4. What is Integration Testing?


a) Testing database queries
b) Testing interactions between multiple modules
c) Testing a system’s overall functionality
d) Testing UI responsiveness
View Answer
Answer: b
Explanation: Integration Testing checks if different modules or components of a system
interact correctly and work together seamlessly. This ensures that data flows accurately
across parts of the system and that any interactions between modules do not cause
unexpected errors.

5. What is System Testing?


a) Performing end-to-end checks of the entire system
b) Testing integration interactions
c) Testing database schema
d) Testing individual lines of code
View Answer
Answer: a
Explanation: System Testing is an end-to-end testing approach where the entire system
is tested as a whole. It verifies that all components, modules, and interfaces work
together as expected and meet business and functional requirements.

6. What is the purpose of software testing in the SDLC?


a) To improve the user interface
b) To speed up the release process
c) To reduce the development time
d) To detect defects and ensure the software meets requirements
View Answer
Answer: d
Explanation: The purpose of software testing in the SDLC is to detect defects and
ensure the software functions as required.

7. Which of the following is NOT a principle of software testing?


a) Testing shows the presence of defects
b) Testing is best done only at the end of development
c) Early testing saves time and cost
d) Exhaustive testing is impossible
View Answer
Answer: b
Explanation: Testing should be performed early in the development process to catch
defects early, rather than waiting until the end.

8. Which of the following is true about software testing?


a) Testing only focuses on functional requirements
b) Software testing guarantees that the software is bug-free
c) Software testing is an ongoing activity throughout the development lifecycle
d) Software testing is not needed after deployment
View Answer
Answer: c
Explanation: Software testing is an ongoing activity that continues throughout the entire
software development lifecycle.

9. What is the difference between verification and validation?


a) Verification checks if the product is built correctly, validation checks if the product is
correct
b) Verification is testing, validation is documentation
c) Verification is about testing the product in the real world, validation is done by
developers
d) There is no difference
View Answer
Answer: a
Explanation: Verification ensures the software is built according to the requirements,
while validation confirms the product meets user needs.

10. What is a bug in software testing?


a) A testing method
b) A feature of the software
c) A malfunction or flaw in the software
d) A software update
View Answer
Answer: c
Explanation: A bug is an error or flaw in the software that causes it to produce incorrect
or unexpected results.

11. What is Regression Testing?


a) Testing only new features
b) Conducting user interface checks
c) Validating database constraints
d) Re-testing existing code to ensure new changes don’t affect functionality
View Answer
Answer: d
Explanation: Regression Testing involves re-testing the existing system whenever
changes or updates are made. Its purpose is to ensure that new code additions,
modifications, or bug fixes do not unintentionally affect the existing system functionality,
maintaining system stability.

12. What is User Acceptance Testing (UAT)?


a) Debugging system errors
b) Running automated test execution
c) Validating business requirements with end-users
d) Testing system architecture
View Answer
Answer: c
Explanation: User Acceptance Testing (UAT) involves end-users testing the system to
confirm it meets their business requirements and expectations. This step ensures that
the software delivers the intended value and user experience before deployment and
release.

13. What is Functional Testing?


a) Checking database constraints
b) Validating that features work as expected according to requirements
c) Analyzing code logic
d) Testing the system’s performance
View Answer
Answer: b
Explanation: Functional Testing ensures that every feature of the system works
according to the specified requirements. It focuses on the system’s behavior, inputs, and
expected outputs rather than its internal code structure.

14. What is the role of a test manager?


a) To write code for the software
b) To deploy the software to production
c) To develop the test environment
d) To oversee the testing process and ensure test cases are executed
View Answer
Answer: d
Explanation: A test manager supervises the testing activities and ensures that the
testing process runs smoothly and efficiently.

15. What is Stress Testing?


a) Evaluating system performance under extreme loads
b) Checking user interface responsiveness
c) Testing for system scalability
d) Analyzing database query optimization
View Answer
Answer: a
Explanation: Stress Testing evaluates system performance under high loads, extreme
traffic, and stress conditions. It helps identify performance bottlenecks and ensures the
system remains stable even under unusual pressures.

16. What is exploratory testing?


a) Testing based on performance only
b) Testing done by end-users only
c) Testing done without pre-defined test cases
d) Testing using automated tools
View Answer
Answer: c
Explanation: Exploratory testing is an approach where testers explore the software
freely and identify defects without predefined test cases.

17. What is Compatibility Testing?


a) Ensuring the system works on different devices and browsers
b) Debugging individual lines of code
c) Testing only database schema
d) Performing code reviews
View Answer
Answer: a
Explanation: Compatibility Testing checks that the system operates correctly across
different devices, browsers, and operating systems.

18. What is Ad-hoc Testing?


a) Automated test planning
b) Informal testing without pre-planning
c) Testing only in a simulated environment
d) Structured test cases
View Answer
Answer: b
Explanation: Ad-hoc Testing is an informal method where testers explore the system to
find bugs without any formal test planning.

19. What is white-box testing?


a) Testing done by external users
b) Testing the user interface design
c) Testing the security features of the software
d) Testing based on the internal structure of the software
View Answer
Answer: d
Explanation: White-box testing involves testing the internal workings of the software,
such as its code and architecture.

20. What is Black-box Testing?


a) Testing user interface components
b) Compiling application source files
c) Testing with no access to source code
d) Testing only backend interactions
View Answer
Answer: c
Explanation: In Black-box Testing, testers do not need to access or analyze the
system’s internal code. Instead, they focus solely on inputs, outputs, and system
behaviour to validate functionality, ensuring that everything works according to the
specified requirements.

21. What is Smoke Testing?


a) Performing quick tests to check system stability
b) Testing hardware performance
c) Only validating database interactions
d) Testing all system functionalities
View Answer
Answer: a
Explanation: Smoke Testing is a quick verification method to ensure that basic system
functionalities work as expected in a new build. It acts as an initial check before more
comprehensive testing to avoid wasting time on deeper tests if critical issues are
present.

22. What is Alpha Testing?


a) Used only in UI validation
b) Conducted by internal testers before beta release
c) Performed by external users
d) Executed during database migration
View Answer
Answer: b
Explanation: Alpha Testing is an internal validation process where developers and
testers identify bugs and issues before the software reaches beta testers. It helps ensure
that the application is stable enough to go into real-world testing.

23. What is Beta Testing?


a) Conducted internally by developers
b) Performed by end-users in a real-world environment
c) Focused only on database testing
d) Conducted during system design reviews
View Answer
Answer: b
Explanation: Beta Testing allows real-world users to interact with the system and
provide feedback. This helps uncover any issues or bugs that weren’t caught during
internal testing, ensuring the application meets user expectations.
24. What is Test Coverage?
a) Percentage of code or features tested
b) Number of test cases executed
c) The speed of test execution
d) Number of bugs identified
View Answer
Answer: a
Explanation: Test Coverage measures the extent to which your test cases cover the
system’s code or functionality. Higher coverage means that more parts of the system
have been tested, which helps reduce the risk of undetected bugs.

25. What is a Bug Report?


a) A test execution log
b) A report detailing errors, steps to reproduce, and expected outcomes
c) A system design document
d) A description of expected functionality
View Answer
Answer: b
Explanation: A Bug Report provides detailed information about errors, including how to
replicate the issue, what the expected behavior should be, and what actually happens.
This helps developers identify and fix bugs faster.

26. What is a test plan?


a) A list of known defects
b) A report of test results
c) A document that outlines the testing strategy and objectives
d) A list of all test cases
View Answer
Answer: c
Explanation: A test plan defines the scope, approach, resources, and schedule of
testing activities for a project.

27. What is a defect life cycle?


a) The process of resolving defects
b) The various stages a defect goes through from identification to resolution
c) The stages of deployment in the software lifecycle
d) The process of adding new features to the software
View Answer
Answer: b
Explanation: The defect life cycle describes the stages a defect goes through from
detection, fixing, and verification to closure.

28. What is the role of a QA analyst?


a) To write code for the system
b) To develop software features
c) To design the user interface
d) To ensure the software is of high quality by testing it
View Answer
Answer: d
Explanation: A QA analyst is responsible for ensuring the quality of the software by
conducting various types of testing.
29. What is automated testing?
a) Testing performed by the end-users
b) Testing executed using software tools and scripts
c) Testing done manually by testers
d) Testing the system under extreme conditions
View Answer
Answer: b
Explanation: Automated testing involves using tools and scripts to run tests without
manual intervention, improving efficiency and accuracy.

30. Which phase in the Software Development Life Cycle (SDLC) involves software
testing?
a) Deployment
b) Design
c) Testing
d) Requirement gathering
View Answer
Answer: c
Explanation: Testing is an integral part of the SDLC, and it typically occurs after the
coding phase, but before deployment.

31. Which testing ensures the software meets customer requirements?


a) Load Testing
b) System Testing
c) Performance Testing
d) Acceptance Testing
View Answer
Answer: d
Explanation: Acceptance Testing validates that the software fulfills the customer’s
business needs and requirements.

32. What does the V-Model in software testing represent?


a) Testing is skipped
b) Testing and development are executed simultaneously
c) Testing begins as soon as the requirements are defined
d) Testing is done after development
View Answer
Answer: c
Explanation: The V-Model is a software development methodology where testing starts
as soon as the requirements are defined, ensuring parallel development and testing.

33. What is manual testing?


a) Testing performed without tools or automation scripts
b) Testing using programming languages
c) Testing focused on automation
d) Testing done only on mobile devices
View Answer
Answer: a
Explanation: Manual testing involves executing test cases manually without using
automated tools or scripts.

34. What is automation testing?


a) Testing performed only on websites
b) Testing executed using scripts or tools
c) Testing done by humans
d) Testing that excludes performance checks
View Answer
Answer: b
Explanation: Automation testing involves executing test cases using automation tools or
scripts to improve efficiency.

35. Which tool is commonly used for automation testing?


a) LoadRunner
b) JIRA
c) Selenium
d) OWASP
View Answer
Answer: c
Explanation: Selenium is a widely used tool for automating web applications.

36. What is the first level of testing usually performed on software?


a) Integration Testing
b) System Testing
c) Acceptance Testing
d) Unit Testing
View Answer
Answer: d
Explanation: Unit Testing is typically the first level of testing and is performed on
individual units or components of software.

37. What is grey box testing?


a) Testing performed only on mobile applications
b) Testing done only by developers
c) Testing focused on hardware compatibility
d) A combination of black box and white box testing techniques
View Answer
Answer: d
Explanation: Grey box testing combines both black box and white box testing
techniques for a comprehensive evaluation.

38. Which of the following tools is commonly used for unit testing?
a) LoadRunner
b) Selenium
c) JUnit
d) JIRA
View Answer
Answer: c
Explanation: JUnit is a popular tool for performing unit testing in Java-based
applications.

39. Which of the following is part of the OWASP Top 10 vulnerabilities?


a) User interface bugs
b) SQL Injection
c) System testing failures
d) Memory optimization issues
View Answer
Answer: b
Explanation: SQL Injection is a critical vulnerability listed in the OWASP Top 10.

40. What is Selenium used for?


a) Stress testing databases
b) Performance testing of APIs
c) Automation of web application testing
d) Manual testing
View Answer
Answer: c
Explanation: Selenium is widely used for automating the testing of web applications.

41. What is JIRA primarily used for?


a) Conducting API testing
b) Writing test scripts
c) Performing performance testing
d) Managing software development projects and tracking bugs
View Answer
Answer: d
Explanation: JIRA is a project management tool used for tracking issues and managing
software development workflows.

42. Which feature is NOT available in JIRA?


a) Bug tracking
b) Automation of test cases
c) Reporting
d) Sprint planning
View Answer
Answer: b
Explanation: JIRA does not automate test cases but integrates with tools like TestNG
for such purposes.

43. What is a key feature of Cypress compared to Selenium?


a) Provides faster, more reliable tests for modern web applications
b) It is only for API testing
c) Does not support JavaScript frameworks
d) Supports only mobile application testing
View Answer
Answer: a
Explanation: Cypress offers faster and more reliable testing for modern web
applications with built-in support for JavaScript frameworks.

44. Which of the following is an Integration Testing approach?


a) Decision Table Testing
b) Usability Testing
c) Boundary Value Analysis
d) Top-down Testing
View Answer
Answer: d
Explanation: Top-down Testing is an Integration Testing approach that tests higher-
level modules first, followed by lower-level modules.
45. Who primarily performs Acceptance Testing?
a) Test Engineers
b) End Users or Clients
c) System Administrators
d) Developers
View Answer
Answer: b
Explanation: Acceptance Testing is performed by end users or clients to validate that
the system meets business requirements.

46. Which Selenium component allows you to write advanced automation scripts?
a) Selenium WebDriver
b) Selenium IDE
c) Selenium Remote Control
d) Selenium Grid
View Answer
Answer: a
Explanation: Selenium WebDriver allows you to write advanced automation scripts for
browser-based applications.

47. What does boundary value analysis focus on?


a) Ensuring complete code coverage
b) Testing at the boundary of input ranges
c) Testing all input combinations
d) Testing invalid inputs only
View Answer
Answer: b
Explanation: Boundary value analysis involves testing at the edges of input ranges,
where errors are most likely to occur.

48. What does TestNG stand for?


a) Testing New Generation
b) Test and Go
c) Test Next Generation
d) Testing New Goals
View Answer
Answer: c
Explanation: TestNG stands for Test Next Generation, which is a testing framework
inspired by JUnit and NUnit.

49. Which scripting language does QTP/UFT use?


a) Python
b) VBScript
c) Java
d) JavaScript
View Answer
Answer: b
Explanation: QTP/UFT uses VBScript to automate test scripts for functional and
regression testing.

50. What is LoadRunner primarily used for?


a) Automated UI Testing
b) Functional Testing
c) Unit Testing
d) Performance and Load Testing
View Answer
Answer: d
Explanation: LoadRunner is a performance testing tool used to test applications under
load conditions.

51. What is the main principle of Agile Testing?


a) Automating all tests
b) Focusing only on functional testing
c) Testing during every phase of the development cycle
d) Testing at the end of development
View Answer
Answer: c
Explanation: Agile Testing involves continuous testing during every phase of the Agile
development cycle to ensure quality.

52. What is Test Oracles?


a) A method to validate expected outcomes against actual results
b) Compilation error logs
c) Test automation tools
d) Database query log
View Answer
Answer: a
Explanation: A Test Oracle is a mechanism to determine whether a system’s behavior
is correct by comparing expected outcomes to actual results.

53. Which of these is NOT a level of software testing?


a) Integration Testing
b) System Testing
c) Unit Testing
d) Error Testing
View Answer
Answer: d
Explanation: Error Testing is not a recognized level of software testing. The main levels
are Unit Testing, Integration Testing, System Testing, and Acceptance Testing.

54. What is a common tool for managing test cases?


a) JIRA
b) Python
c) Selenium
d) JMeter
View Answer
Answer: a
Explanation: JIRA is widely used for managing test cases, tracking issues, and project
management.
Software Engineering Questions and
Answers – Debugging Techniques and
Approaches
This set of Software Engineering Multiple Choice Questions & Answers (MCQs) focuses
on “Debugging Techniques and Approaches”.

1. What is testing process’ first goal?


a) Bug prevention
b) Testing
c) Execution
d) Analyses
View Answer
Answer: a
Explanation: Its better to prevent a bug rather than putting time in its testing and
removal.

2. Software mistakes during coding are known as


a) errors
b) failures
c) bugs
d) defects
View Answer
Answer: c
Explanation: A software bug is an error, flaw, failure, or fault in a computer program or
system that causes it to produce an incorrect or unexpected result.

3. Name an evaluation technique to assess the quality of test cases.


a) Mutation analysis
b) Validation
c) Verification
d) Performance analysis
View Answer
Answer: a
Explanation: Mutation analysis is used to design new software tests and evaluate the
quality of existing software tests.

4. Test should be conducted for every possible


a) data
b) case
c) variable
d) all of the mentioned
View Answer
Answer: d
Explanation: It increases the scope for code inspection.

5. Which of the following is not a part of bug report?


a) Test case
b) Output
c) Software Version
d) LOC
View Answer
Answer: d
Explanation: Line of code(LOC) is immaterial during testing, as it is an exhaustive
process.

6. Which of the following is not a part of Execution Flow during debugging?


a) Step Over
b) Step Into
c) Step Up
d) Step Out
View Answer
Answer: c
Explanation: Step Into executes code, Step Out continues execution until bound value
and Step Over is to execute code without stopping.

7. Cyclomatic Complexity method comes under which testing method.


a) Yellow box
b) White box
c) Gray box
d) Black box
View Answer
Answer: b
Explanation: Cyclomatic Complexity tells us about the number of independent paths in
a program which is covered in white box testing.

8. Which is a black box testing technique appropriate to all levels of testing?


a) Acceptance testing
b) Regression testing
c) Equivalence partitioning
d) Quality assurance
View Answer
Answer: c
Explanation: Equivalence partitioning is a software testing technique that divides the
input data of a software unit into partitions of equivalent data from which test cases can
be derived.

9. Which of the following is the way of ensuring that the tests are actually testing
code?
a) Control structure testing
b) Complex path testing
c) Code coverage
d) Quality assurance of software
View Answer
Answer: c
Explanation: None.

10. Effective testing will reduce _______ cost.


a) maintenance
b) design
c) coding
d) documentation
View Answer
Answer: a
Explanation: Remaining options are a part of development process.

11. Which of the following is a common pointwer problem?


a) Data sharing errors
b) Accessing data elements of the wrong type
c) Attempting to use memory areas after freeing them
d) All of the mentioned
View Answer
Answer: d
Explanation: These are the common errors programmers make while coding.

Software Engineering Questions and


Answers – Software Testing Techniques – 1
This set of Software Engineering Multiple Choice Questions & Answers (MCQs) focuses
on “Software Testing Techniques – 1”.

1. Which of the following term describes testing?


a) Finding broken code
b) Evaluating deliverable to find errors
c) A stage of all projects
d) None of the mentioned
View Answer
Answer: b
Explanation: Software testing is the process of evaluation a software item to detect
differences between given input and expected output.

2. What is Cyclomatic complexity?


a) Black box testing
b) White box testing
c) Yellow box testing
d) Green box testing
View Answer
Answer: b
Explanation: Cyclomatic complexity measures the amount of decision logic in the
program module.Cyclomatic complexity gives the minimum number of paths that can
generate all possible paths through the module.

3. Lower and upper limits are present in which chart?


a) Run chart
b) Bar chart
c) Control chart
d) None of the mentioned
View Answer
Answer: a
Explanation: A run chart is used to monitor the behavior of a variable over time for a
process or system. Run charts graphically display cycles, trends, shifts, or non-random
patterns in behavior over time. It contains lower and upper limits.
4. Maintenance testing is performed using which methodology?
a) Retesting
b) Sanity testing
c) Breadth test and depth test
d) Confirmation testing
View Answer
Answer: c
Explanation: Maintenance Testing is done on the already deployed software. The
deployed software needs to be enhanced, changed or migrated to other hardware. The
Testing done during this enhancement, change and migration cycle is known as
maintenance testing.

5. White Box techniques are also classified as


a) Design based testing
b) Structural testing
c) Error guessing technique
d) None of the mentioned
View Answer
Answer: b
Explanation: The structural testing is the testing of the structure of the system or
component. Structural testing is often referred to as ‘white box’ or ‘glass box’ or ‘clear-
box testing’ because in structural testing we are interested in what is happening ‘inside
the system/application’.

6. Exhaustive testing is
a) always possible
b) practically possible
c) impractical but possible
d) impractical and impossible
View Answer
Answer: c
Explanation: Exhaustive testing is the testing where we execute single test case for
multiple test data.It means if we are using single test case for different product or module
under manual testing.
testing .

7. Which of the following is/are White box technique?


a) Statement Testing
b) Decision Testing
c) Condition Coverage
d) All of the mentioned
View Answer
Answer: d
Explanation: Statement testing, decision testing, condition coverage all of them uses
white box technique.

8. What are the various Testing Levels?


a) Unit Testing
b) System Testing
c) Integration Testing
d) All of the mentioned
View Answer
Answer: d
Explanation: Unit, system, integration testing all of them are levels in testing.

9. Boundary value analysis belong to?


a) White Box Testing
b) Black Box Testing
c) White Box & Black Box Testing
d) None of the mentioned
View Answer
Answer: b
Explanation: Boundary value analysis is based on testing at the boundaries between
partitions and checks the output with expected output.

10. Alpha testing is done at


a) Developer’s end
b) User’s end
c) Developer’s & User’s end
d) None of the mentioned
View Answer
Answer: a
Explanation: Alpha testing takes place at the developer’s end. Developers observe the
users and note problems. Alpha testing is testing of an application when development is
about to complete. Minor design changes can still be made as a result of alpha testing

You might also like