File: PROJECT

package info (click to toggle)
tom 1.1.1-2
  • links: PTS
  • area: main
  • in suites: potato
  • size: 6,340 kB
  • ctags: 2,244
  • sloc: objc: 27,863; ansic: 9,804; sh: 7,411; yacc: 3,377; lex: 966; asm: 208; makefile: 62; cpp: 10
file content (62 lines) | stat: -rw-r--r-- 2,338 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
PROJECT

    Software Design for Testability

GOAL

    The aim of the project is to develop (1) a methodology for designing
    testable software systems, and (2) an accompanying testing framework.
    Systems targeted by this project are software systems which interact
    with and control hardware and which are therefore difficult to test
    extensively.

INTRODUCTION

    In hardware/software systems, functionality like high-speed data
    acquisition, manipulation and transmission tends to be implemented by
    hardware, possibly complemented by, relatively simple, software.  More
    complex software is applied to control the system, with functionality
    like administration, exception handling, and (re-) configuration.

    The main problem with software which controls hardware is how to test
    it extensively against hardware failures, exceptions and other unusual
    conditions.  Failure conditions to which the software must respond
    correctly can, of course be stimulated by probing screwdrivers at the
    hardware and other brute-force techniques, but would be much more
    economical and, more important, repeatable if such conditions were
    simulated.

LANGUAGE

    XXX.

FRAMEWORK

    The testing framework will include features listed below.  Note that
    for the implementation of a lot of these, active support by the test
    objects is necessary, obviously.

      - the framework maintains the notion of simulated time: actions by
	the test objects can specify the elapsed simulated time; for all
	other software actions simulated time runs at the same pace as the
	real time.

      - enumerated fault testing: testing the response to each of an
	enumerable set of conditions.

      - statistical fault testing: testing the response to conditions from
	a set, occuring statistically.  Statistical testing can be used to
	generate scenario's.

      - scenario testing: feeding the system faults according to a
	scenario, which can contain statistical faults, dependencies,
	timing information, &c.

      - loading a particular state of the system.

      - making a snapshot of the system's state and reloading from a
	previous snapshot.

      - In between tests, the system may be reset to its default state,
	its state may be retrieved from a snapshot or its state may be
	unmodified.