Software Testing Techniques

0.0(0)
studied byStudied by 0 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/27

flashcard set

Earn XP

Description and Tags

Flashcards covering key vocabulary and concepts in software testing methodologies.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

28 Terms

1
New cards

Software Testing

Techniques to improve software quality by finding errors and providing confidence in the dependability of the software product.

2
New cards

Good Test

A test is successful if the program fails.

3
New cards

Dependable Software Product

A software product is dependable if it is consistent with its specification.

4
New cards

Fault Detection

It’s cheaper to find and fix faults at the unit level.

5
New cards

Early Testing

It’s good to do as much testing as early as you can -- you can’t test quality in, you have to build it in

6
New cards

Exhaustive Testing

The concept that fully testing each program to ensure that the program works correctly is not practically achievable.

7
New cards

Application Under Test (AUT)

Software that is being evaluated.

8
New cards

Test Input

Data provided to AUT.

9
New cards

Expected Output

Answer we expect to see from a test.

10
New cards

Test Case

Test inputs + expected output.

11
New cards

Test Suite

Collection of test cases.

12
New cards

Test Requirements

Those aspects of the program that must be covered according to the considered criterion.

13
New cards

Validation

Are we building the right product? To what degree the software fulfills its (informal) requirements?

14
New cards

Verification

Are we building the product right? To which degree is the implementation consistent with its (formal or semi-formal) specification?

15
New cards

Failure

Observable incorrect behavior of a program; related to the behavior of the program, rather than its code.

16
New cards

Fault (bug)

Related to the code; necessary (not sufficient!) condition for the occurrence of a failure.

17
New cards

Error

Cause of a fault; usually a human error (conceptual, typo, etc.).

18
New cards

Coincidental Correctness

A program can be coincidentally correct if it executes a fault but does not fail.

19
New cards

Test Selection Criterion (C)

Rule for selecting the subset of inputs or requirements to use in a test suite.

20
New cards

Black-box Testing

Based on a specification.

21
New cards

White-box Testing

Based on the code.

22
New cards

Oracle

Provides the expected (correct) results of a test and is used to assess whether a test is successful or not.

23
New cards

Test adequacy criteria

the adequacy score of a test suite is the percentage of “coverable” items (as defined by the criteria) that are covered by the test suite.

24
New cards

Functional Quality

How well the behavior conforms to design/specifications?

25
New cards

Structural Quality

How well is the functionality implemented (i.e., architecture/design, code)?

26
New cards

Unit Testing

The act of testing the smallest possible unit of code, usually a single class in OOP.

27
New cards

Ambiguity in Requirements

A major source of headache and cost overruns.

28
New cards

JUnit

A unit testing framework for Java.