Authors:
Daniel Maciel
1
;
Ana C. R. Paiva
1
and
Alberto Rodrigues da Silva
2
Affiliations:
1
INESC TEC, Faculdade de Engenharia da Universidade do Porto, Porto and Portugal
;
2
INESC-ID, Instituto Superior Técnico, Universidade de Lisboa, Lisboa and Portugal
Keyword(s):
Requirements Specification Language (RSL), Test Case Specification, Model-based Testing (MBT), Test Case Generation, Test Case Execution.
Related
Ontology
Subjects/Areas/Topics:
Artificial Intelligence
;
Cross-Feeding between Data and Software Engineering
;
Knowledge Management and Information Sharing
;
Knowledge-Based Systems
;
Model-Driven Engineering
;
Requirements Engineering
;
Software Engineering
;
Software Engineering Methods and Techniques
;
Symbolic Systems
Abstract:
Frequently software testing tends to be neglected at the beginning of the projects, only performed on the late stage. However, it is possible to benefit from combining requirement with testing specification activities. On one hand, acceptance tests specification will require less manual effort since they are defined or generated automatically from the requirements specification. On the other hand, the requirements specification itself will end up having higher quality due to the use of a more structured language, reducing typical problems such as ambiguity, inconsistency and incorrectness. This research proposes an approach that promotes the practice of tests specification since the very beginning of projects, and its integration with the requirements specification itself. It is a model-driven approach that contributes to maintain the requirements and tests alignment, namely between requirements, test cases, and low-level automated test scripts. To show the applicability of the appro
ach, two complementary languages are adopted: the ITLingo RSL that is particularly designed to support both requirements and tests specification; and the Robot language, which is a low-level keyword-based language for the specification of test scripts. The approach includes model-to-model transformation techniques, such as test cases into test scripts transformations. In addition, these test scripts are executed by the Robot test automation framework.
(More)