Difference between revisions of "Testing Tool (Architecture)"
(Created implementation details page for Testing Tool) |
(Initial description of tester system and communication) |
||
Line 1: | Line 1: | ||
− | |||
[[Category:Testing]] | [[Category:Testing]] | ||
+ | |||
+ | == Test system architecture == | ||
+ | |||
+ | * separate system for executing tests | ||
+ | * system is only responsible for running tests, without determine whether a test fails or not -> compiling and launching system is done by tool, which is also oracle | ||
+ | * tests are compiled up to degree 3 in development system, so user can edit tests like normal classes, but do not affect resulting binary | ||
+ | * test referenced by root class of development system will be compiled anyway, this way we can also run tests in debugger | ||
+ | * in CDD: test system is implicit target (does not have to be in ecf) which inherits from development target, test target simply defines new root class/feature | ||
+ | * re-use development EIFGEN (copy) so test system does not need to compile from scratch? | ||
+ | |||
+ | == Communication between tool and test executor == | ||
+ | |||
+ | === Protocol === | ||
+ | |||
+ | '''From tool to executor''' | ||
+ | |||
+ | * name(s) of test to execute | ||
+ | * quit | ||
+ | |||
+ | '''From executor to tool''' | ||
+ | |||
+ | * test result | ||
+ | * text output produced by test | ||
+ | * exception details (type, tag, feature, class? occurred during set up, test, tear down?) | ||
+ | * call stack for exception | ||
+ | |||
+ | === Open questions === | ||
+ | |||
+ | * executor per machine/processor? | ||
+ | * text based/object base communication? |
Revision as of 13:18, 12 June 2008
Contents
Test system architecture
- separate system for executing tests
- system is only responsible for running tests, without determine whether a test fails or not -> compiling and launching system is done by tool, which is also oracle
- tests are compiled up to degree 3 in development system, so user can edit tests like normal classes, but do not affect resulting binary
- test referenced by root class of development system will be compiled anyway, this way we can also run tests in debugger
- in CDD: test system is implicit target (does not have to be in ecf) which inherits from development target, test target simply defines new root class/feature
- re-use development EIFGEN (copy) so test system does not need to compile from scratch?
Communication between tool and test executor
Protocol
From tool to executor
- name(s) of test to execute
- quit
From executor to tool
- test result
- text output produced by test
- exception details (type, tag, feature, class? occurred during set up, test, tear down?)
- call stack for exception
Open questions
- executor per machine/processor?
- text based/object base communication?