Software Testing Flashcards

1
Q

what is the prepose of testing?

A

1- to show that a program does what it is suppose to do
2- discover program defects

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

When you test software, you execute a program using …. WHAT?

A

artificial data

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

in program testing You check the results of the test run for errors, anomalies or information about the program’s (functional OR non-functional) attributes?

A

non-functional

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

T/F in program testing it Can reveal the presence of errors NOT their absence.

A

T

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Testing is part of a more GENERAL …………… and …………..process

A

verification and validation

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Testing is part of a more general verification and validation process, which also includes ……….. …………. Techniques

A

static validation.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Program testing goals are:

A
  • to show the developer and customer that the software meets requirements
  • identify cases where the software behaves incorrectly, undesirably , not to its specification
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

for which software (custom / generic) is that there should be at least one test for every requirement in the requirements document.

A

Custom Software

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

for which software (custom / generic) is that there should be tests for all of the system features, plus combinations of these features, that will be incorporated in the product release.

A

Generic software

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

DEF is concerned with rooting out undesirable system behavior:

A

Defect testing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

what is the first goal in program testing to….. WHAT?

A

validation testing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

(defect or validation) testing expect the system to perform correctly using a given set of test cases that reflect the system’s expected use?

A

validation testing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

(defect or validation) testing The test cases are designed to expose defects?

A

defect testing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

the test cases in (defect or validation) testing can be deliberately obscure and need not reflect how the system is normally used?

A

defect

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

in validation testing:
You expect the system to perform correctly using a given set of …….. …….. that reflect the system’s expected use

A

test cases

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

why are you giving a set of test cases in validation testing?

A

to reflect the system’s expected use.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

(defect or validation) testing
Demonstrates to the developer and customer that the software meets requirements.

A

validation

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

(defect or validation) testing
A successful test shows the system works as intended.

A

validation

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

(defect or validation) testing
Identifies faults where behavior is incorrect or deviates from the specification.

A

defect

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

(defect or validation) testing
Identifies faults where behavior is incorrect or deviates from the specification.

A

defect

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

in (Verification vs validation) we ask “Are we building the product right”. ?

A

verfication

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

(Verification vs validation)
The software should conform to its specification.

A

verification

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

in (Verification vs validation) we ask
“Are we building the right product”?

A

validation

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Verification vs validation
The software should do what the user really requires.

A

validation

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

a ………test [in defect testing] is a test that makes the system perform incorrectly and so exposes a defect in the system.

A

Successful

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

DEF Concerned with analysis of the static system representation to discover problems:

A

Software inspections

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

Software inspections May be supplement by ………. ……………… and ……. ……………

A

tool-based document and code analysis.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

DEF Concerned with exercising and observing product behavior:

A

Software testing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q

Software (inspections or testing) is called static verification?

A

Inspection

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
30
Q

Software (inspections or testing) is called dynamic verification?

A

testing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
31
Q

DEF These involve people examining the source representation with the aim of discovering anomalies and defects:

A

Software inspections

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
32
Q

T/F Software Inspections not require execution of a system so may be used before implementation.

A

T

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
33
Q

They have been shown to be an effective technique for discovering program errors.????

A

Software inspections

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
34
Q

During (متى؟), errors can mask (hide) other errors

A

testing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
35
Q

Advantages of inspections: (3)

A
  • Prevent hidden errors through static analysis, avoiding error interactions.
  • Can inspect incomplete systems without needing costly test setups.
  • Identify defects and evaluate broader qualities like compliance, portability, and maintainability.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
36
Q

in inspection If a program is incomplete, then you need to develop ……………. …………….to test the parts that are available.

A

test harnesses

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
37
Q

T/F :Inspections and testing are complementary and not opposing verification techniques.

A

T

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
38
Q

T/F: Inspections and testing Both should be used during the V & V process.

A

T

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
39
Q

DEF: can check conformance with a specification but not conformance with the customer’s real requirements:

A

inspections

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
40
Q

DEF CANNOT check non-functional characteristics such as performance, usability, etc:

A

inspections

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
41
Q

name the three stages of testimg:

A
  • Development testing
  • Release testing
  • User testing
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
42
Q

which testing stage is “where the system is tested during development to discover bugs and defects.” ?

A

Development testing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
43
Q

which testing stage is “where a separate testing team test a complete version of the system before it is released to users.”?

A

Release testing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
44
Q

which testing stage is “where users or potential users of a system test the system in their own environment.”

A

user testing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
45
Q

DEF includes all testing activities that are carried out by the team developing the system.

A

development testing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
46
Q

what are the three kind of testing in development testing?

A

unit, component, system testing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
47
Q

which development testing part is “where individual program units or object classes are tested.”

A

unit testing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
48
Q

Unit testing should focus on testing the functionality of what?

A

object or methods

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
49
Q

which development testing part is “where several individual units are integrated to create composite components”

A

component testing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
50
Q

Component testing should focus on testing what?

A

component interfaces.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
51
Q

which development testing part is “, where some or all of the components in a system are integrated and the system is tested as a whole”

A

System testing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
52
Q

System testing should focus on testing What?

A

component interactions

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
53
Q

DEF the process of testing individual components in isolation:

A

unit testing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
54
Q

Unit testing is a (defect or validation) testing process????

A

DEFECT

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
55
Q

Units in Unit testing can be: (3)

A
  • Functions or methods.
  • Object classes with attributes and methods.
  • Composite components with defined interfaces.
56
Q

unit testing should be (automated or manual)?

A

automated
(why?)so that tests are run and checked without manual intervention.

57
Q

In automated unit testing, you make use of WHAT?

A

test automation framework
like: JUnit
(why?) to write and run your program tests.

58
Q

What do unit testing frameworks provide?

A

Generic test classes to create specific test cases

59
Q

How do unit testing frameworks report test results?

A

through a (GUI)

60
Q

what are the automated test components?

A
  • A setup part
  • A call part
  • An assertion part
61
Q

which automated testing component iswhere you initialize the system with the test case, namely the inputs and expected outputs?

A

setup

62
Q

which automated testing component is where you call the object or method to be tested.

A

call

63
Q

which automated testing component is where you compare the result of the call with the expected result?

A

assertion

64
Q

what does the assertion part compare in automated testing?

A

the result of the call with the expected result.

65
Q

in the assertion part of automation testing what happens If the assertion is true?

A

the test is successful

66
Q

in the assertion part of automation testing what happens If the assertion is false?

A

test failed

67
Q

what should the unit test cases do?(2)

A
  • Show the component works as expected.
  • Reveal any defects in the component.
68
Q

what are the two types of unit testing?

A
  • Test normal operations to ensure expected behavior.
  • Test abnormal inputs to catch and handle common problems.
69
Q

what are two types of testing strategies?

A
  • partition testing
  • guideline-based testing
70
Q

in the second type of unit testing what kind of inputs should we use?

A

abnormal inputs

71
Q

why should we use abnormal inputs in unit test cases?

A

to find common problems, ensuring they are handled properly without crashing the component.

72
Q

which testing strategy is where you identify groups of inputs that have common characteristics and should be processed in the same way?

A

partition testing

73
Q

T/F in partition testing You should choose tests from within each of these groups.

A

T

74
Q

which testing strategy is where you use testing guidelines to choose test cases?

A

Guideline-based testing

75
Q

In guideline-based testing, guidelines are based on ………. ……………. of common programming ………….during component development.

A

previous experience
errors

76
Q

DEF Input data and output results often fall into different classes where all members of a class are related.

A

partition testing

77
Q

what are the classes in partition testing called?

A

equivalence partition or domain

78
Q

In partition testing, how should test cases be selected?

A

they should be chosen from each partition.

79
Q

which testing strategy Tests software with sequences which have only a single value?

A

Testing guidelines (sequences)

80
Q

T/F in testing guidelines it Uses sequences of different sizes in different tests.

A

T

81
Q

why do we need to derive tests in testing guidelines tests ?

A

tests so that the first, middle and last elements of the sequence are accessed.

82
Q

Software components are often …………………………………….that are made up of several interacting objects.

A

composite components

83
Q

How do you access the functionality of objects within a composite component?

A

Through the defined component interface.

84
Q

What should testing of composite components focus on?

A

Showing that the component interface behaves according to its specification.

85
Q

What can you assume has been completed when testing composite components?

A

Unit tests on the individual objects within the component.

86
Q

What are the objectives of interface testing?

A

To detect faults

87
Q

name the 4 interface types:

A
  • Parameter interfaces
  • Shared memory interfaces
  • Procedural interfaces Sub-system
  • Message passing interfaces Sub-systems
88
Q

which interface type is Data passed from one method or procedure to another?

A

parameter interfaces

89
Q

what interface type is a Block of memory is shared between procedures or functions?

A

Shared memory interfaces

90
Q

what interface type is a Sub-system encapsulates a set of procedures to be called by other sub-systems?

A

Procedural interfaces

91
Q

which interface type is a Sub-systems request services from other sub-systems

A

Message passing interfaces

92
Q

name the 3 interface errors

A
  • interface misuse
  • Interface misunderstanding
  • timing error
93
Q

which interface error is A calling component calls another component and makes an error in its use of its interface

A

interface misuse

94
Q

“parameters in the wrong order” is an example of which interface error?

A

Interface misuse

95
Q

which interface error is A calling component embeds assumptions about the behaviour of the called component which are incorrect?

A

Interface misunderstanding

96
Q

which interface error is The called and the calling component operate at different speeds and out-of-date information is accessed.

A

timing error

97
Q

What is the main focus in system testing?

A

Testing the interactions between components.

98
Q

What does system testing check regarding components?

A

That components are
1- compatible
2- interact correctly
3- transfer the right data at the right time

99
Q

T/F: System testing tests the emergent behavior of a system.

A

T

100
Q

What may be integrated with newly developed components during system testing?

A

Reusable components and off-the-shelf systems.

101
Q

T/F: System testing is a collective rather than an individual process.

A

T

102
Q

DEF define the required system test coverage may be developed:

A

Testing policies

103
Q

DEF an approach to program development in which you inter-leave testing and code development:

A

Test-driven development (TDD)

104
Q

T/F: In TDD, tests are written before the code is developed.

A

T

105
Q

What is the critical driver of development in TDD?

A

passing the test

106
Q

What must happen before moving to the next increment in TDD?

A

developed code must pass its test.

107
Q

Which development method introduced TDD?

A

Agile methods

108
Q

T/F: TDD can be used in plan-driven development processes

A

T

109
Q

DEF testing the system to check that changes have not ‘broken’ previously working code:

A

Regression testing

110
Q

T/F: manual testing process, regression testing is expensive

A

T

111
Q

T/F in Regression testing with automated testing, it is simple and straightforward.

A

T/F

112
Q

which stages of testing is Testing a particular release of a system intended for use outside the development team?

A

release testing

113
Q

which stages of testing’s goal is To convince the supplier that the system is good enough for use?

A

Release testing

114
Q

T/F: Release testing must show that the system delivers its specified functionality, performance, and dependability, and that it does not fail during normal use

A

T

115
Q

what type of testing process is release testing?

A

black-box testing process

116
Q

DEF Part of release testing may involve testing the emergent properties of a system:

A

performance testing

117
Q

What emergent properties of a system are tested as part of release testing?

A

Performance and reliability.

118
Q

What should tests reflect during performance testing?

A

The profile of use of the system.

119
Q

True or False: Performance tests involve increasing the load until the system performance becomes unacceptable.

A

t

120
Q

DEF A form of performance testing where the system is deliberately overloaded to test its failure behavior:

A

stress testing

121
Q

which stages of testing is : in which users or customers provide input and advice on system testing?

A

user testing

122
Q

T/F: User testing is essential, even when comprehensive system and release testing have been carried out

A

T

123
Q

what are the 3 types of user testing?

A

1- Alpha
2- beta
3- acceptance

124
Q

which type of user testing is where Users of the software work with the development team to test the software at the developer’s site?

A

Alpha testing

125
Q

which type of user testing is where A release of the software is made available to users to allow them to experiment and to raise problems that they discover with the system developers?

A

beta testing

126
Q

which type of user testing is where Customers test a system to decide whether or not it is ready to be accepted from the system developers and deployed in the customer environment?

A

acceptance testing

127
Q

which type of user testing is used Primarily for custom systems?

A

acceptance testing

128
Q

What do software customers generally expect all software to be?

A

Dependable

129
Q

Customers may accept some system failures for non-critical applications.

A

T

130
Q

DEF are usually a result of system errors that are derived from faults in the system

A

Failures

131
Q

T/F: faults do not necessarily result in system errors

A

t

132
Q

TorF : Errors do not necessarily lead to system failures

A

T

133
Q

three types of fault management:

A

fault avoidance
fault detection
fault tolerance

134
Q

which fault manag.. is this: Verification and validation techniques are used to discover and remove faults in a system before it is deployed.

A

Fault detection

135
Q

which fault manag.. is this: The system is designed so that faults in the delivered software do not result in system failure.

A

Fault tolerance

136
Q

which fault manag.. is this: development process is organised so that faults in the system are detected and repaired before delivery to the customer?

A

Fault avoidance

137
Q
A