• No results found

Higher-Order Testing

N/A
N/A
Protected

Academic year: 2021

Share "Higher-Order Testing"

Copied!
28
0
0

Loading.... (view fulltext now)

Full text

(1)

SOFTWARE QUALITY

ASSURANCE

John Abbott College JPC

Higher-Order

Testing

M. E. Kabay, PhD, CISSP Director of Education, NCSA

President, JINBU Corp

(2)

Higher-Order Testing

z Beyond Module Testing

z Integration Testing

z Function Testing

z System Testing

z Acceptance Testing

z Installation Testing

z Test Planning and Control

(3)

Beyond Module Testing

z Practical programs must represent real-world

needs

z Programs must do what their users expect

and demand

z SDLC: System Development Life Cycle

requirements: why program is needed

objectives: what and how well

external specifications: representation of

program to its users

(4)

Beyond Module Testing

z Software errors arise from miscommunication

z JAD (Joint Application Development) and

RAD (Rapid Application Development)

emphasize constant correction

by constant communication with users

z Specific testing phases emphasize

(5)

Integration Testing

z Establish that interconnections among

modules function as required

z Implicit in module testing as previously

(6)

Function Testing

Find discrepancies between program and external specification

z What the program does as a black box

(7)

System Testing

z Definition z Facility Testing z Stress Testing z Volume Testing z Usability Testing z Security Testing z Performance Testing z Storage Testing z Configuration Testing

z Compatibility / Conversion Testing

z Installability Testing z Reliability Testing z Recovery Testing z Serviceability Testing z Documentation Testing z Procedure Testing

(8)

System Testing

Definition

z Compare program to original objectives

z Cannot base tests on external specifications

are attempting to verify conformity

between what the ext specs represent and actual behaviour of program

therefore work with user documentation +

program objectives + program

z Must have written, measurable objectives for

(9)

System Testing

Facility Testing

z Refers to the documented features or

functions

z Scan objectives sentence by sentence

z Look for failure to comply

(10)

System Testing

Stress Testing

z Show that program cannot handle sudden

increase in load, demand, input

z Applies to programs that must have minimum

throughput or response time

z Distinct from volume testing

volume testing looks at total continuous

load to process

stress testing looks at effects of sudden

imposition of load

z E.g., if specs stipulate ability to handle up to

200 concurrent sessions, try suddenly going from 50 users to 200

(11)

System Testing

Volume Testing

z Show that system cannot handle maximum

required amounts of input

z E.g., if program must be able to handle 200

Gb files, test with 200 Gb files and more

z E.g., if specifications stipulate ability to

process 10,000 orders in a batch, test with 10,001 orders

(12)

System Testing

Usability Testing

z Show that normal users will fail to accomplish

their documented goals using program

z Clumsy design

z Unsuitable language

z Meaningless error messages

z Inconsistencies in functions from screen to

screen

z Inadequate checks on input

z Useless options

(13)

System Testing

Security Testing

z Try to violate rules of confidentiality, integrity

and availability

z “Tiger Teams” specialize in attacking security

z Be sure to obtain authorization for such

attacks!

z Use known attacks as described in security

literature

z CERT, CIAC Advisories

z USENET postings

(14)

System Testing

Performance Testing

z Show that program is unable to meet

specified throughput or response-time requirements

z Example of failure:

10 second Service Level Agreement for all

transactions

43 minute response time

absence of volume testing allowed poor

design to pass

z Often combined with volume and stress

(15)

System Testing

Storage Testing

z Inability to meet requirements for working

correctly with specified storage

cannot work with minimum RAM

minimum required disk space exceeds

capacity

z Incompatibilities with

RAM management software

virtual memory

encryption software

(16)

System Testing

Configuration Testing

Look for inability to function with specified

z Hardware--RAM, ROM, CPU, peripherals

z Software--operating system, TSRs, drivers

z Program parameters--directories, max, min

users / files / records

z Network operating systems

versions

(17)

System Testing

Compatibility/Conversion Testing

z Failure of conversions from older systems

z Inability to use existing data files

z Conflicts with other legacy systems

z Incompatibility with older operating systems

z Inability to function on older hardware

(18)

System Testing

Installability Testing

z Difficulties during installation of new product

z Integration with operating systems

(19)

System Testing

Reliability Testing

z Difficult to demonstrate long MTBF

z Monitor rate of discovery of new errors

z Use mathematical models to estimate

(20)

System Testing

Recovery Testing

z Show that system cannot recover according

to specifications

z Try deliberate “sabotage”

z Measure MTTR

(21)

System Testing

Other types of tests

z Serviceability Testing

z Documentation Testing

(22)

Acceptance Testing

z Performed by client organization

z Conformity to contract

z Includes installation testing

methods of showing that installation failed

check files, directories, code libraries,

(23)

Test Planning and Control

z Too many organizations act as if there will be

no errors found

No resources for response

Inadequate time allocated for repair

z Need extensive planning

z Regression testing

Especially important

(24)

Test Completion Criteria

z Bad idea

Stop when time runs out

Stop when no more errors found

z Better way

Complete specific methodology

But not possible for all phases

Subjective

Focusses on test method, not goal

z Best approch

Find specific number of errors...

… and try for a few more when you find

(25)

Test Completion Criteria

How to know when enough errors found?

z Statistical calculations

z Mark-recapture of known errors

z Parallel testing by independent teams

What if there are too few errors in reality?

z Need judgement of test quality

(26)

Test Completion Criteria

Graph errors found per unit time

z Continue searching if success rate high

z Consider stopping when success rate falls

E rr or s / t im e Time

(27)

Independent Test Agency

z Hire different organizations for development

and testing

z Develop own separate department

z Has worked well in practice

high motivation in testing

healthy competition

(28)

References

Related documents

In the process of e-commerce adoption, encouraging the acceptance of consumers becomes a crucial factor.The main rationale of this study is to investigate the challenges

The contract must specify that by using Noodle domain name registration services, the customer becomes subject to the terms of a legal agreement between the customer and

In these cases, directors and teachers are able to build partnerships with parents to meet the needs of young children with challenging behavior, with support from the mental

Fig.5—Polarization curves generated during a 15 day batch cycle for river sample 1 (slow flowing Yamuna) and 2 (fast flowing Sangam): Power density was calculated as described

But other important topics are also addressed, including the sources of business cycles, the role of dispersed information in the propagation of economic fluctuations, and the

Having defined the variables, validity sets and classes of valid responses in a data dictionary, the variables, labels and classes can be used when specifying edits in DLTs.. Figure

To conduct the analysis which investigates whether the locus of control construct of employees influences the strength of the relationship between the independent variable,