Automotive Industry Insights
The ASAM ATX standard (Automotive Test Exchange Format, see https://www.asam.net/standards/detail/atx/ for details) defines a format for a standardized exchange of test data between different test systems. ATX supports the ISTQB “Certified Tester” syllabus methodology and can be used for many activities in the test process, e.g. test specification, test planning, test execution, and test evaluation.
The ATX test exchange format allows the reuse of existing test cases in different test automation software systems. It enables the description of manual or automated test specifications.
Supported Activities in the Test Process:
The Test specification activity realizes the general testing objectives by the creation of concrete test conditions and test cases. The major tasks are the following:
- Define and specify the possible test objects
- Define and specify the test base (such as requirements, failure mode and effects analysis, risk analysis reports, architecture, design, interface specifications) and evaluate the testability of the test base and test objects
- Identify and prioritize the test cases based on analysis of test items and the specification, behavior, and structure of the software
- Design high-level test cases (also called logical or abstract test cases) and model the test case flow by defining test steps and test actions
- Document test level, quality criteria, and the used test design technique for the test cases
- Create bidirectional traceability between test base and test cases
- Identify the necessary test parameters to support the configuration of test cases, test steps, or test actions
- Specify the possible test environment setup and document the required infrastructure and test tools
Test preparation is the activity where test suites are specified by combining the test cases in a particular order and including any other information needed for test execution. Test preparation has the following major tasks:
- Identification and definition of the concrete test object
- Identification and definition of the test environment
- Identification, definition, and/or creation of test data (test parameter values)
- Creation of test execution plans (test suites) from the test cases
- Implementation of unimplemented test actions in the chosen implementation language
In this activity the test environment is set up and the tests are executed. The major tasks are the following:
- Generation of code for the test cases identified by the test execution plan by incorporating the specified test data
- Compilation of the generated code for the test cases
- Setup and verification of the test environment. Optionally, preparation of the test harnesses
- Execution of test procedures either manually or by using test execution tools, according to the sequence in the test execution plan
- Logging of the outcome and the verdict of test execution. Recording the identities and versions of the unit under test, test tools, etc.
The test evaluation activity collects the results of a test execution and analyzes the outcome. The major tasks are:
- Comparing results with expected results
- Reporting the differences as incidents in the test report
- Reporting noticeable problems in the test report and analyzing them
- Attaching test logs, result data, etc. to the test report
- Repeating test activities if necessary
A test environment describes the hardware, instrumentation, simulators, software tools, and other support elements needed to conduct a test.
A test object describes the component or system to be tested. A test object may consist of different parts.
A test base represents a chunk of information from which the requirements of a component or system can be inferred. This might be for example complete documentation, a requirements document, or a single requirement exported out of a requirement management or issue tracking system.
There are a number of quality attributes available with which product quality can be described, such as functionality, reliability, usability, efficiency, maintainability, and portability.
Test Design Technique
A test design technique is a method used to derive or select test cases.
A test specification (<TEST-SPEC>) is a container for a set of test cases and a lot of things which they have in common, e.g. the test base, test objects, or test environments.
A test case is an essential part of the test specification. It allows the definition of tests and a set of input values, execution preconditions, expected results, and execution postconditions, developed for a particular objective or test condition, such as to exercise a particular program path or to verify compliance with a specific requirement.
A test step is part of a specific sequence that serves to divide a test case into steps. They can be documented individually and will show up in the test report.
A test action is a single operation inside a test step.
Test Parameter Values
The element <TEST-CASE-PARAM-VALUES> is used to provide the values for test parameters defined within a <TEST-CASE>.
Test Execution Plan
A <TEST-EXECUTION-PLAN> is a test suite describing scope, environment, and schedule of intended test activities. It identifies the test objects, the test environment, the test parameter values, the planned test cases, and their execution sequence. It is a record which can be referenced in a test planning process.
The results of the execution of a test execution plan are recorded in a test report.
The test report contains the consequence/outcome of the execution of a test execution plan. For all executed test cases it includes verdicts and result data like outputs to streams, data changes, logs, or result files.
Relation to other standards
ATX uses the terminology defined by ISTQB. ATX reuses patterns and XML structures defined by the following standards:
- MSR Concepts of Application Profile (MSR-TR-CAP)
- ASAM Harmonized Data Objects (ASAM-HDO)
- ASAM AE Functional Specification Exchange Format (ASAM AE-FSX)
- AUTOSAR V4.0
– AUTOSAR Generic Structure Template
– AUTOSAR Software Component Template
By using ASAM XIL API as interface to test benches/hardware the test exchange flexibility is enhanced due to the abstraction from each specific test bench.
The first version of the ASAM ATX standard 1.0.0 was published in 2012. The current version is 1.0.1 from September 25, 2018. In this release only the TEST-OBJECT-SET was extended. At the current time there are no further development projects.
Study group summary of ATX
Although the activity is limited, the standard offers interesting aspects in terms of test specifications, metadata, test data, and test plans. However, the standard does not currently support any special features of scenario-based testing. The focus is on classic, requirements-based, and functional testing.
Main benefits of ATX:
- Unified abstract test specification to be shared among different authorities, OEMs, suppliers, and tools
- Development of the test system is independent of test libraries (efficiency increase on end-user side)
ASAM ATX is frequently used in conjunction with ASAM HIL in hardware-in-the-loop test systems.
Source: © ASAM e.V. ASAM ATX, Programmers Guide, Version 1.0.1, Date: 2018-09-25
Share and discuss this content with your network. Thank you!
Phone: +49 8102 806160