Chapter 22 & 23: Software Testing Strategies

अब Quizwiz के साथ अपने होमवर्क और परीक्षाओं को एस करें!

Stub

A S_?_ is a dummy procedure, module, or unit, that stands in for an unfinished portion of the program

Probability

A good test has a high P_?_ of finding an error.

Redundant

A good test is not R_?_.

Simple

A good test should be neither too S_?_ nor too complex

To behave in an anomalous way

A successful defect test is one which causes a program to __

Old

A system's {new/old} capabilities should be given a higher priority in software testing.

Harness

A test H_?_ , also called a test driver, is the supporting code and data used to provide an environment for testing part of a system in isolation

B (end users)

Acceptance tests are normally conducted by the A) developer B) end users C) test team D) systems engineers

Goal, Input, Expected

According to the slides, the test case has three basic components. List them. G__ I__and system state E__ behavior

B (a test team will test the software more thoroughly)

According to your book, the best reason for using Independent software test teams is that A) software developers do not need to do any testing B) a test team will test the software more thoroughly C) testers do not get involved with the project until testing begins D) arguments between developers and testers are reduced

Black-box

B_?_ testing is a software testing technique whereby the internal workings of the item being tested are not known by the tester; this tester only knows the inputs and what the expected outcomes should be and not how the program arrives at those outputs

Black-box

B_?_ testing is a software testing technique whereby the tester does not ever examine the programming code and does not need any further knowledge of the program other than its specifications.

Black-box

B_?_ testing, also known as function testing, is an approach to testing where the program test cases are based on the system specification

Corners

Boris Beizer says that "bugs lurk in the C_?_ and congregate at boundaries.

#edges - # nodes + 2

Cyclomatic Complexity = _?_ List the formula for Cyclomatic Complexity

(-) , (+)

Cyclomatic complexity = # edges _?_ # nodes _?_ 2

Capabilities

Exercising a system's {capabilities/components} should be given a higher priority in software testing.

White-box

In _?_ testing, the objective is to exercise all program statements - not all path combinations. Test cases are derived according to program structure; knowledge of the program is used to identify these additional structural test cases

Large

In software testing, we begin by 'testing-in-the-small' and move toward 'testing-in-the-_?_'

Equivalence Partition

Input data & output results often fall into different classes where all members of a class are related; each of these classes is an E_?_ P_?_ where the program behaves in an equivalent way for each class member; test Cases should be chosen from each partition.

B (rolling integration testing)

Smoke testing might best be described as A) bullet-proofing shrink-wrapped software B) rolling integration testing C) testing that hides implementation errors D) unit testing for small programs

< 100, 100-999, > 999

Suppose the program is to prompt the user for the three digit product code, the lowest of which is 100. List the three equivalence partitions for the test module.

Testing

T_?_ is the exposure of a system to trial input to see whether it produces the correct output.

Cases

Test {Data/Cases} are Inputs to test the system and the predicted outputs from these inputs if the system operates according to its specification.

Data

Test {Data/Cases} are Inputs which have been devised to test the system

Typical situations

Testing {typical situations/the boundary value cases} should be given a higher priority in software testing.

Path

The Objective of P_?_ testing is to ensure that the set of test cases is such that each path through the program is executed at least once

Unit, Component, Integration, System, Alpha, Final, Beta

The Slides List 4 Major Testing Phases . List Them. U__/ C__Testing I__ Testing S__/ A__Testing Validation / F__/ B__Testing

Smoke

The following describes S_?_ testing. Software components that have been translated into code are integrated into a "build." A build includes all data files, libraries, reusable modules, and engineered components that are required to implement one or more product functions. A series of tests is designed to expose errors that will keep the build from properly performing its function. The build is integrated with other builds and the entire product (in its current form) is tested daily

E (both b and c)

The major advantage(s) of Top-down integration testing {is/are} _?_. A) low level modules never need testing B) major decision points are tested early C) no drivers need to be written D) no stubs need to be written E) both b and c

Path

The objective of _?_ testing is to ensure that the set of test cases is such that each branch through the program is executed at least once

Cyclomatic

The program flow graph is used as a basis for computing the _?_ complexity

Independent, Programming Languages, User, Specifications

The slides list 4 advantages of black-box testing. List them. The test is unbiased because the designer and the tester are I_?_ of each other The tester does not need knowledge of any specific P_?_ L_?_ The test is done from the point of view of the _?_, not the designer Test cases can be designed as soon as the S_?_ are complete

Nodes, Arcs

The starting point for path testing is a program flow graph that shows N _?_ representing program decisions and A_?_ representing the flow of control

Nodes, Arcs

The starting point for path testing is a program flow graph that shows _?_ representing program decisions and _?_ representing the flow of control.

Flow

The starting point for path testing is a program_?_ graph that shows nodes representing program decisions and arcs representing the flow of control. Each branch is shown as a separate path and loops are shown by arrows looping back to the loop condition node.

To discover defects in programs

What is the goal of defect testing?

E(c, a, b, d)

What is the normal order of activities in which traditional software testing is organized? Select from these Activities { a. integration testing b. system testing c. unit testing d. validation testing } A) a, d, c, b B) b, d, a, c C) c, a, d, b D) d, b, c, a E) c, a, b, d

Independent tester

When testing software, it is the _?_ {developer / independent tester} that must first learn about the system; he/she will then attempt to break it in an effort to improve quality.

Developer

When testing software, it is the _?_ {developer / independent tester} that understands the system but, will test "gently" and, is driven by "delivery"

E (both c and d)

Which of the following need to be assessed during unit testing? A) algorithmic performance B) code stability C) error handling D) execution paths E) both c and d

Brute-force

Which of the three major debugging strategies, describe in the slides, is least effective; it uses memory dumps, run traces, and/or many print statements

Backtracking

Which of the three major debugging strategies, describe in the slides, is recommended only for small programs; it begin where error is found and manually goes backward examining logic and output statements until problem found? B__

Brute-force

Which of the three major debugging strategies, describe in the slides, is used most commonly? B__

Cause Elimination

Which of the three major debugging strategies, describe in the slides, uses induction and deduction to produce lists of potential causes is identified. Test cases are constructed to systematically prove or disprove each potential hypothesis.

C (error handling & execution paths)

Your text tells us that _?_ needs to be assessed during unit testing? A) algorithmic performance & execution paths B) code stability & execution paths C) error handling & execution paths D) algorithmic performance & error handling

A (Unit/ Component Testing)

_?_ is the testing of code generally written by a single programmer A) Unit/Component Testing B) Integration Testing C) Alpha Testing D) Final/Beta Testing

B (Integration Testing)

_?_ is the testing of several units, combined to form a unit or subsystem by testing team A) Unit/Component Testing B) Integration Testing C) Alpha Testing D) Final/Beta Testing

D (Final/Beta Testing)

_?_ is the testing of the finished program, by end users or their representatives A) Unit/Component Testing B) Integration Testing C) Alpha Testing D) Final/Beta Testing

C (Alpha Testing)

_?_ is the testing of the finished program, by program testers A) Unit/Component Testing B) Integration Testing C) Alpha Testing D) Final/Beta Testing

Unit

_?_ testing is another name for Component Testing

White-box

_?_ testing, also called structural testing or clear-box or open box testing, is a software testing technique whereby explicit knowledge of the internal workings of the item being tested are used to select the test data.

Integration

_?_ {Component, Integration} testing is based on the system specifications/requirements

Component

_?_ {Component, Integration} testing is usually the responsibility of the component developer; component tests are derived from the Developer's Experience

Integration

_?_{Component, Integration} testing is usually the responsibility of an independent testing team.

Component

_?_{Component, Integration} testing is usually the responsibility of the developer (except sometimes for critical systems)

D (Recovery testing)

__ testing is best describe by a "a focus that forces the software to fail in a variety of ways and verifies that regenerates back in the proper fashion" A) Validation Testing B) System testing C) Alpha/Beta testing D) Recovery testing E) Security testing F) Stress testing G) Performance testing

C (Alpha/Beta testing)

__ testing is best describe by a "focus is on customer usage" A) Validation Testing B) System testing C) Alpha/Beta testing D) Recovery testing E) Security testing F) Stress testing G) Performance testing

A (Validation Testing)

__ testing is best describe by a "focus is on software requirements" A) Validation Testing B) System testing C) Alpha/Beta testing D) Recovery testing E) Security testing F) Stress testing G) Performance testing

E (Security testing)

__ testing is best describe by a "focus that verifies that protection mechanisms built into a system will, in fact, protect it from improper penetration" A) Validation Testing B) System testing C) Alpha/Beta testing D) Recovery testing E) Security testing F) Stress testing G) Performance testing

F (Stress testing)

___ testing is best describe by a "focus that executes a system in a manner that demands resources in abnormal quantity, frequency, or volume" A) Validation Testing B) System testing C) Alpha/Beta testing D) Recovery testing E) Security testing F) Stress testing G) Performance testing

G (Performance testing)

____ testing is best describe by a "focus to test the run-time performance of software within the context of an integrated system" A) Validation Testing B) System testing C) Alpha/Beta testing D) Recovery testing E) Security testing F) Stress testing G) Performance testing

B (System testing)

__testing is best described by a "focus is on system integration" A) Validation Testing B) System testing C) Alpha/Beta testing D) Recovery testing E) Security testing F) Stress testing G) Performance testing

Integration

{Component, Integration} testing is the testing of groups of components integrated to create a system or sub-system

Component

{Component, Integration} testing is the testing of individual program components

T

{T/F} Backtracking, Brute Force, and Cause Elimination are approaches to debugging?

T

{T/F} Debugging is not testing, but often occurs as a consequence of testing.

T

{T/F} Security testing attempts to verify that protection mechanisms built into a system protect it from improper penetration.

T

{T/F} Stress testing examines the pressures placed on the user during system use in extreme environments.

F

(T/F) Configuration reviews are not needed if regression testing has been rigorously applied during software integration.

F

(T/F) Defect testing shows the presence and absence of defects

F

(T/F) In software quality assurance work there is no difference between software verification and software validation

F

(T/F) Only exhaustive testing can show that a program is free from bugs; exhaustive testing is possible.

T

(T/F) Recovery testing is a system test that forces the software to fail in a variety of ways.

T

(T/F) Software validation is achieved through a series of tests performed by the user once the software is deployed in his or her work environment.

T

(T/F) The focus of validation testing is to uncover places that a user will be able to observe failure of the software to conform to its requirements.


संबंधित स्टडी सेट्स

Hannah Chong Pui Ching Middle School 2020-21 F1 Term1 English Uniform Test

View Set

Chapter 11 Inquizitive: The South and Slavery

View Set

CompTIA Security+ 2.5 - Incident Response Procedures

View Set

Science Bowl Practice Questions - Math

View Set

Chapter 12 questions Renewable Energy

View Set

Abuela invents the zero vocabulary

View Set