Flashcards - FSE Week 8 Computer Sciences Study Set
What is the primary focus of the testing process in software engineering?
Finding defects within a piece of software.
What are the two aspects of software testing?
Planning the activity and carrying the activity out.
What does testing primarily show in a software application?
The presence of errors, not their absence.
What is the goal of program testing?
To demonstrate that the software meets its requirements.
What is validation testing concerned with?
Demonstrating that the software meets its requirements.
What is defect testing aimed at discovering?
Faults or defects in the software.
What are the three stages where testing must be carried out during software development?
Development testing, release testing, and user testing.
What is unit testing?
Testing program components such as methods or object classes.
What should automated unit testing include?
A setup part, a call part, and an assertion part.
What kind of testing is Test-Driven Development (TDD) closely associated with?
Agile methods such as Extreme Programming.
In TDD, when should tests be written?
Before the actual code is written.
What is the benefit of TDD regarding code coverage?
Every code segment has at least one associated test.
What does regression testing check for?
That changes have not introduced new bugs into a system.
What is validation in software engineering?
Ensuring that the product meets customer expectations.
What is verification in software engineering?
Checking that the software meets its stated requirements.
What are software inspections primarily used for?
To discover anomalies and defects in the source code.
What does component testing focus on?
Testing component interfaces of multiple units.
What is the purpose of equivalence partitioning in testing?
To choose test cases from different classes where the program behaves equivalently.
What should unit test cases include according to the lecture?
Normal operation and testing experience of common problems.
What is guideline-based testing?
Using testing guidelines to choose test cases based on previous experiences.
What is a critical aspect of automated unit testing?
Tests must be run without manual intervention.
What should a successful test in defect testing do?
Expose a defect in the system by causing it to perform incorrectly.
How should the success of a test be defined in TDD?
The test passes when the code developed meets the expectations set.
What is one disadvantage of manual regression testing?
It is expensive compared to automated testing.
What kind of attributes does program testing evaluate?
Non-functional attributes during test runs.