31
Research and Technology Harmen Sthamer, 1 (c) Copyright 2001 Sthamer, DaimlerChrysler AG Introduction, Motivation Evolutionary Algorithms Evolutionary Testing (ET) and their Applications - Evolutionary Safety Testing - Evolutionary Structural Testing Experiments and Results - Evolutionary Temporal-Behavior Testing Experiments and Results Conclusion, Future Work 14th International Internet & Software Quality Week 2001 Evolutionary Testing of Embedded Systems Harmen Sthamer, Andre Baresel and Joachim Wegener DaimlerChrysler AG, Research and Technology {harmen.sthamer, andre.baresel, [email protected]}

14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,1

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

• Introduction, Motivation

• Evolutionary Algorithms

• Evolutionary Testing (ET) and their Applications

- Evolutionary Safety Testing

- Evolutionary Structural Testing➥ Experiments and Results

- Evolutionary Temporal-Behavior Testing➥ Experiments and Results

• Conclusion, Future Work

14th International Internet & Software Quality Week 2001

Evolutionary Testing of Embedded SystemsHarmen Sthamer, Andre Baresel and Joachim Wegener

DaimlerChrysler AG, Research and Technology

{harmen.sthamer, andre.baresel, [email protected]}

Page 2: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,2

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

Testing in Practice

Introduction and Motivation

System andacceptance testing

Other development activities

Module andintegration testing

50

30

20

Test automation

Test methods

• Testing is the most important analytical quality assurance method• Testing carries a considerable cost-factor within system development

• Testing is not performed systematically

• Testing is too resource intensive

Average distribution of software development costs for embedded systems

• low error detection rate

• high costs

Page 3: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,3

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

Test Objectives

l an exhaustive test is usually impossible

Test data has to be selected according to certain test criteria

Weak Features

Strong Features

Through system execution with selected test data the test aims to• detect errors in the system under test and• gain confidence in the correct functioning of the test object

l takes into consideration the real environment (e.g. target computer, compiler) andl tests the dynamic system behaviour (e.g. run-time behaviour, memory space requirement)

Introduction and Motivation

Page 4: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,4

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

State of the ArtThe objectives of testing embedded systems arefinding errors and building up confidence in- functional behavior and- non-functional behaviorby executing the test object with selected inputs.

Suitable functional testmethods available (e.g.CTE XL)

Lack of specializedtest methods.

• temporal testing is difficult and very expensive

• no methods or appropriate tools are available

Introduction and Motivation

• common test approach (included in many standards)

• not possible to check whether all requirements have beenimplemented

• difficult to automate (limits of symbolic execution)therefore, very expensive and often neglected

Structutral Testing

Temporal-Behavior Testing

Page 5: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,5

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

Test Activities

Test Evaluation

Test Execution Monitoring

Test Case Design

Specification Program

Test Organization

Test Docum

entation

Test Plan

• most important for test quality• usually performed manually

Introduction and Motivation

To ensure test quality,test cases need to bedefined systematically.

To ensure efficienttesting, test activitiesneed to be automated.

Page 6: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,6

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

Test Evaluation

Test Execution Monitoring

Specification Program

Test Organization

Test Docum

entation

Test Plan

Introduction and Motivation

Test CaseDesign

by Meansof EASelection

Reinsertion

Recombination

Mutation

Evaluation

Systematic definition and automation promises to reduce testing effort(time and expenses) during the determination of relevant test data

To ensure test quality,test cases need to bedefined systematically.

To ensure efficienttesting, test activitiesneed to be automated.

Test Activities

Page 7: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,7

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

Evolutionary Algorithms

Evolutionary Testing

• Iterative optimization method which is based on processes of natural genetics and thetheory of evolution.

• In each iteration a new population of individuals (potential problem solution) isgenerated and evaluated.

• From the current populationnew populations are generated via

• selection,• recombination,• mutation,• fitness assignment, and• reinsertion of offspring

until• an optimal solution has been found or• a predetermined termination criteria is met.

• Important: definition of a suitable objective function

Initialization

Selection

Recombination

Mutation

Fitness Assignment

Reinsertion

Fitness Assignment

Termination criteriamet?

T

F Result

Page 8: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,8

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

Application of Evolutionary Algorithms to Software Testing

Evolutionary Testing

• Input domain of test object forms the search space, in which input situations fulfillingtest objectives are searched for

• Each individual represents a test datum for the system under test

• Individual fitness values are based on themonitoring results for the correspondingtest datum

• Applications

• Testing Temporal Behavior• Structural Testing• Safety Tests• Robustness Tests

• . . .Selection

Reinsertion

Recombination

Mutation

Evaluation

InitialPopulation

IndividualsTest Data

Monitoring

Fitness Values

TestExecution

Test Results

Termination ?

• Prerequisite:test objective has to be defined numerically and has to be transformed into anoptimization problem (suitable fitness function)

Page 9: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,9

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

Evolutionary Testing

Selection

Reinsertion

Recombination

Mutation

Test Results

Termination ?

General Procedure1: 19 65 30 99 442: 4 13 22 17 563: 29 48 23 49 784: 89 34 59 39 90...N: 23 62 69 43 67Individuals

Test Data

Monitoring

Fitness Values

TestExecution Evaluation

Initial Population(random generation)

Page 10: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,10

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

General Procedure

Evolutionary Testing

Selection

Reinsertion

Recombination

Mutation

Test Results

Termination ?

Individuals

Test Data

Monitoring

Fitness Values

TestExecution Evaluation 1: 0.51

2: 0.753: 0.204: 0.21...N: 0.33

Initial Population(random generation)1: 19 65 30 99 442: 4 13 22 17 563: 29 48 23 49 784: 89 34 59 39 90...N: 23 62 69 43 67

Page 11: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,11

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

General Procedure

Evolutionary Testing

Reinsertion

Recombination

MutationIndividuals

Test Data

Monitoring

Fitness Values

TestExecution

Test Results

Termination ?

Evaluation 1: 0.512: 0.753: 0.204: 0.21...N: 0.33

Selection

3: 29 48 23 49 784: 89 34 59 39 90...N: 23 62 69 43 67

Initial Population(random generation)1: 19 65 30 99 442: 4 13 22 17 563: 29 48 23 49 784: 89 34 59 39 90...N: 23 62 69 43 67

Page 12: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,12

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

General Procedure

Evolutionary Testing

Reinsertion

MutationIndividuals

Test Data

Monitoring

Fitness Values

TestExecution

Test Results

Termination ?

Evaluation

Selection

3: 29 48 23 49 784: 89 34 59 39 90...N: 23 62 69 43 67

Recombination

Initial Population(random generation)1: 19 65 30 99 442: 4 13 22 17 563: 29 48 23 49 784: 89 34 59 39 90...N: 23 62 69 43 67

3: 29 48 23 49 784: 89 34 59 39 90...N: 23 62 69 43 67

1: 0.512: 0.753: 0.204: 0.21...N: 0.33

7: 29 48 59 49 908: 89 34 23 99 78...N’: 23 45 69 43 81

3: 29 48 23 49 784: 89 34 59 39 90...N: 23 62 69 43 67

3: 29 48 23 49 784: 89 34 59 39 90...N: 23 62 69 43 67

Page 13: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,13

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

General Procedure

Evolutionary Testing

Reinsertion

Individuals

Test Data

Monitoring

Fitness Values

TestExecution

Test Results

Termination ?

Evaluation

Selection

Recombination

7: 29 48 59 49 908: 89 34 23 99 78...N’: 23 45 69 43 81

3: 29 48 23 49 784: 89 34 59 39 90...N: 23 62 69 43 67

Mutation

7: 29 39 59 82 908: 89 34 23 99 78...N’: 23 45 69 70 81

Initial Population(random generation)1: 19 65 30 99 442: 4 13 22 17 563: 29 48 23 49 784: 89 34 59 39 90...N: 23 62 69 43 67

3: 29 48 23 49 784: 89 34 59 39 90...N: 23 62 69 43 67

1: 0.512: 0.753: 0.204: 0.21...N: 0.33

3: 29 48 23 49 784: 89 34 59 39 90...N: 23 62 69 43 67

3: 29 48 23 49 784: 89 34 59 39 90...N: 23 62 69 43 67

Page 14: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,14

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

General Procedure

Evolutionary Testing

Individuals

Test Data

Monitoring

Fitness Values

TestExecution

Test Results

Termination ?

Evaluation

Selection

Recombination

Mutation

7: 29 39 59 82 908: 89 34 23 99 78...N’: 23 45 69 70 81

Reinsertion

3: 29 48 23 49 784: 89 34 59 39 907: 29 39 59 82 908: 89 34 23 99 78...N: 23 45 69 70 81

Initial Population(random generation)1: 19 65 30 99 442: 4 13 22 17 563: 29 48 23 49 784: 89 34 59 39 90...N: 23 62 69 43 67

3: 29 48 23 49 784: 89 34 59 39 90...N: 23 62 69 43 67

1: 0.512: 0.753: 0.204: 0.21...N: 0.33

7: 29 48 59 49 908: 89 34 23 99 78...N’: 23 45 69 43 81

3: 29 48 23 49 784: 89 34 59 39 90...N: 23 62 69 43 67

3: 29 48 23 49 784: 89 34 59 39 90...N: 23 62 69 43 67

Page 15: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,15

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

Aim• For safety critical systems, safety constraints are specified, which under no

circumstances should be violated. If test data results in a violation of safety constraints error

Idea• Generate test data in order to violate safety constraints• Fitness function defined as the distance from violating safety condition

Safety condition: speed < 150 mph

if F = 0 test successful, safety condition violated

Generated test data

speedF −=150

speed

Evolutionary Safety Testing

Safety Testing

Page 16: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,16

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

Safety Testing

Generated test data

SC: speed < 150 mph

Examples of constructing fitness functions

expression fitness, if exp. fitness, iffalse exp. true

a = b F = abs(a - b) F = 0 a ≠ b F = k F = 0 a < b F = (a - b) + k F = 0 a ≤ b F = (a - b) F = 0 a > b F = (b - a) + k F = 0 a ≥ b F = (b - a) F = 0

a || b F = min(f(a), f(b)) F = 0 a && b F = f(a) + f(b) F = 0 k: smallest step size

Examples of constructing fitness functions

expression fitness, if exp. fitness, iffalse exp. true

a = b F = abs(a - b) F = 0 a ≠ b F = k F = 0 a < b F = (a - b) + k F = 0 a ≤ b F = (a - b) F = 0 a > b F = (b - a) + k F = 0 a ≥ b F = (b - a) F = 0

a || b F = min(f(a), f(b)) F = 0 a && b F = f(a) + f(b) F = 0 k: smallest step size

Fault-Tree Analysis (Leveson, Harvey)

SC: wheel_speed < 5160 rpm

SC: Gear < 5 || (motor_speed < 7000 rpm)

F = f(5 - Gear) + f(7000 - motor_speed );

F = f(5160 - wheel_speed)

if F = 0 then /* test successful, SCviolated

Evolutionary Safety Testing

Page 17: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,17

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

Structural Testing

Aim• Generate test data to cover structural test criteria automatically

(statement test, branch test, condition test, path test)

Each program branch, each condition, each path are considered as a separateindependent optimisation problem

Idea• distance oriented approach

• test case design is performed on the basis of the programstructure

• test partitioned into single sub-goals

• separate fitness function for each sub-goal measures distancefrom fulfilling branch predicates in desired way

Condition fulfilled

Evolutionary Structural Testing

Page 18: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,18

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

Distance Oriented Approaches

Target

Level 4

Level 3

Level 2

Level 1

1. Approximation level1. 1. Approximation levelApproximation level

• Identify relevant branching statements for targetnode on basis of control-flow graph

• Relevant branching statements can lead to a miss ofthe desired target

• In this sense approximation-level corresponds to‘distance from target’

➥ Fitness = Approximation_Level + Distance

2. Distance measurement in the branchingstatement with undesired branching

2. 2. Distance measurementDistance measurement in in the branchingthe branchingstatement with undesired branchingstatement with undesired branching

• Evaluation of predicate in a branching condition in thesame manner as described for safety testing, e.g.if A = B Distance = | A - B |

Evolutionary Structural Testing

Page 19: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,19

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

Results of Structural Testing

Evolutionary Structural Testing

0

200000

400000

600000

800000

1000000

1200000

1400000

Num

ber

ofte

stca

ses

ET 16915 42086 23633 35263

RT 199743 215834 470931 1251038

RT / ET 11,8 5,1 19,9 35,5

Triangle_int Triangle_float Complex My_atof

Results achieved with distance oriented approach (Wegener, Baresel, Sthamer)

• ET achieves full branch coverage for all test objects, RT achieves only between 46% and90% branch coverage on average

• ET requires less test cases compared to RT (by a factor of between 5 to 35)

0

20

40

60

80

100

120

Ach

ieve

dco

vera

ge

ET coverage 100 100 100 100

RT coverage 90,5 90,5 98,1 46,6

Triangle_int Triangle_float Complex My_atof

(0%) (0%) (50%) (0%)

Coverage in %

Page 20: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,20

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

The temporal behavior of real-time systems is erroneous when input situations exist forwhich the computation violates the specified timing constraints limits.

Testing Real-Time Constraints

• Find test data with longest and shortest executiontimes to check whether they cause temporal error

• The search for input situations with particularly long or short executions timesis interpreted as an optimization problem.

• Objective values for individuals based on execution times of corresponding testdata

Idea

upper

bottom

time limit

Evolutionary Temporal Behavior Testing

Aim

Page 21: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,21

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

Experiment Environment for Testing Temporal Behaviour

Automatic generation of test dataon the host system

Execution Times

Test Data

Test Results

Longest Execution Time

Test execution with automaticmeasurement of execution timeson the target system

Comparing the executiontimes with the results of the developer test; possible error elimination

Selection

Reinsertion

Recombination

Mutation

Evaluation

Termination?

Evolutionary Temporal Behavior Testing

Page 22: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,22

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

Landscape of Search Space

1.081.1

1.121.14

x 104

1.14

1.16

1.18

x 104

3.875

3.8751

3.8752

3.8752

3.8752

x 106

variable 150

Bubble sort − integer

variable 250

obje

ctiv

e v

alu

e

multidimensional,plateaus,

Very complex discontinuities (jumps),definition gap,local optimahigh dependencies among input variables

Evolutionary Temporal Behavior Testing

Page 23: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,23

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

Evolutionary Temporal Behavior Testing

Results

• variation between ET and RTresults when searchinglongest and shortestexecution times for variousexamples (in %)

•for all test objects (exceptEngine VI) ET results aresuperior to RT

•for several test objectsvariances > 50%

• directed search of ETconsiderably morepowerful than RT Shortest Execution Time

0,00

10,00

20,00

30,00

40,00

50,00

60,00

CG

1

CG

2

CG

2

CG

4

Dis

crepa

nce

Airb

agI

Airb

agII

Pro

per

ty

Nav

igatio

n

Eng

ine

I

Engi

ne

II

Eng

ine

III

Engi

ne

IV

Eng

ine

V

Engi

ne

VI

Mat

rix

Bubb

leso

rt

-60,00

-50,00

-40,00

-30,00

-20,00

-10,00

0,00

-38000%-160%

Longest Execution Time

Page 24: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,24

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

Comparison of test runs for evolutionary testing and random testing when searching thelongest execution time for railroad electronics example

Detailed Analysis of Selected Results

Generation

Execution

Tim

e(incycles)

Evolutionary Test

Random Test

Execution Time (cycles)

Frequ

ency

Execution Time (cycles)

Frequ

ency

Evolutionary Temporal Behavior Testing

Page 25: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,25

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

Computer Graphics: ET compared to Functional Testing

Evolutionary Testing Temporal Behavior

-60,00

-50,00

-40,00

-30,00

-20,00

-10,00

0,00

P1

P2

P3Shortest Execution Time

0,00

5,00

10,00

15,00

20,00

25,00

S1 S2 S3 S4 S5 S6 S7 S8 S9 S10

S11

S12

S13

S14

S15

S16

S17

S18

S19

Longest Execution Time

• variation (in %) betweenET over functionaltesting (FT) whensearching longest andshortest executiontimes for CG exampleon various P

• for most results ET issuperior to FT

• search for longestexecution is moredifficult than forshortest

• directed search of ETconsiderably morepowerful than FT

Page 26: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,26

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

Engine Control

Evolutionary Testing

• Generation of 7.500 or 15.000 test data (50 or 100 generations each with 150individuals, subject to the number of parameters of the test object)

Functional and Structural Testing

• Test case definitions by the developers of the tasksObjective: testing the functional and temporal system behavior

• Test case design on the basis of the specification and programstructures

• Functional testing with the Classification-Tree Method• Branch testing with complete branch coverage

Random Testing

• Generation of 7.500 or 15.000 random test data (corresponding to the predefinitionsfor the evolutionary test)

Evolutionary Temporal Behavior Testing

Page 27: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,27

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

Results Engine Control

Results of FSTin each case as100 %

6070

8090

100

110120

M1 M2 M3 M4 M5 M6

RT FST ET

66,4

67,2 69,6 116,0

108,4

120,8

110,0

108,4

112,0

64,068,8

54,0

45,2

57,8 59,6 58

,4

58,4

54,0

Comparing the longest execution times from evolutionary testing (ET), functional and structuraltesting (FST) as well as random testing (RT) for the engine control tasks (execution times in µs)

Evolutionary Temporal Behavior Testing

Page 28: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,28

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

Comparison between Static Analysis and Evolutionary Test

• SA analysis determines upper and lower bounds (max and min), considers structural as wellfunctional constraints, e.g. depends on various memory access time, caching,

• meas means dynamic determined execution time of SA WCET path• results varified by ET (automatic tool support)

Evolutionary Temporal Behavior Testing

0,850

0,900

0,950

1,000

T1 T2 T3 T4

WCETmax 2710 742 5154 3604

WCETmeas 2520 708 4764 3292

ET 2516 708 4760 3288

WCETmin 2462 676 4728 3186

T1 T2 T3 T40,800

0,850

0,900

0,950

1,000

0

BCETmax 1992 512 2394 2600

BCETmeas 1928 492 2376 2448

ET 1924 492 2344 2436

BCETmin 1838 452 2026 2308

T1 T2 T3 T4

WCET analysis BCET analysis

Results normalized, WCETmax and BCETmax is set to 1

Results

Page 29: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,29

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

Summary of Temporal Behaviour Testing

• Evolutionary testing more efficient than random testing.

• No information on function or internal structures are required

• Since ET can adapt to the temporal behavior of the respective test object, it leads tothe generation of test data with extreme execution times

• Test object is tested with a large number of different input situations

• Testing is carried out on a Target-System

• The comparison with static analysis shows that theexecution times determined by evolutionary testingform a realistic approximation of the extreme execution times.

Evolutionary Temporal Behavior Testing

No guarantee that the optimum solution is found, since ET is based:

randomly exchange ofinformation amongindividuals (crossover)

randomly change ofinformation within anindividual (mutation)

However

Page 30: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,30

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

Conclusion

Conclusion, Future Work

• Evolutionary Testing is a new method for the automation of test case design

• Since the test object can be transformed into an optimization problem, it can be solved

with the assistance of metaheuristic search methods

• Dynamic adaptation of evolutionary algorithms

• Due to high level of automation and good results, Evolutionary Testing is well placed to

supplement existing test methods. It contributes to better product quality and promotes

efficient development

• More research remains to be done to answer outstanding questions

• More papers on Evolutionary Testing, CTE and TESSY can be found onhttp://www.systematic-testing.com

• Further information on Evolutionary Algorithms in SE can be found on http://www.discbrunel.org.uk/seminal

Page 31: 14th International Internet & Software Quality Week 2001 ...€¦ · Research and Technology Harmen Sthamer, 7 (c) Copyright 2001 Sthamer, DaimlerChrysler AG. Research and Technology

Research and TechnologyH

armen

Stham

er,31

(c) Copyright 2001 Sthamer, DaimlerChrysler AG

Future Work

Conclusion and Future Work

• seeding of test data into initial population, e.g. for structural testing, and temporalbehaviour testing

• selection of search technique and configuration of evolutionary operators accordingto test object metrics

• dynamic configuration of evolutionary operators duringtest run with respect to test progress

• test termination using cluster analysis

• develop further application fields e.g.regression testing and back-to-backtest of control systems, testinginteractive systems, testingobject-oriented software

• transformation of code in orderto increase testability