40 likes | 161 Views
TDL (Test Description Language) is a specialized framework for black-box testing, focusing on system interactions through message-passing, procedure calls, and shared variables. It emphasizes what a test should accomplish rather than how to perform it, using a simple type system based on identifiers. TDL supports various representation formats, including graphical UML diagrams, tabular documents, and textual formats for tool integration. Its capabilities include enabling domain experts to create and review test specifications, tracing requirements to test cases, and facilitating reverse engineering from recorded executions.
E N D
TDL – Added Value Dr. Andreas Ulrich, Siemens AG
TDL is… • Test • Specifically designed for describing black-box tests • Focusing on interactions at SUT interfaces:message-passing, procedure-based, shared variables • Description • Description of interaction flow with declarative (timing) constraints plus data flow, i.e. focus on what a test/system shall do, not how • Simple type system; everything is a name/identifier • Language • Common concepts, various representation formats: • Graphical: constrains and extends UML sequence diagrams • Tabular: supporting document-based approaches (Word/Excel) • Textual: for tool support and freaks • Supports end users (domain expert , test designer, test executor) • Must be combined with a test execution framework, e.g. for supporting a type system
TDL is not… • An exchange format for tests at a lower level ATX, OTX, TestML • A common testing framework with varying views (logical/technical) and various notations UTP • A detailed language that contains everything to produce executable tests TTCN-3 GFT, UTP • A language for describing mere test purposes TPLan • A front-end to TTCN-3 only
Applications for TDL • Provision of abstract descriptions of tests • Description of tests as (user) scenarios • Enable tracing of requirements down to tests • Support of test specification creation and review • Enable domain experts to write and understand the tests • Automatic, tool-supported analysis, e.g. for inconsistencies • Intermediate representation of tests • Captures the essence of a test of user scenarios, e.g. simple expression of iterative, concurrent or nested user interactions • Support for reverse engineering of tests from recorded executions