Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
A systematic reuse process for automated acceptance tests: Construction and elementary evaluation
Ericsson Sweden AB, Sweden.
Blekinge Institute of Technology, Faculty of Computing, Department of Software Engineering.ORCID iD: 0000-0002-1532-8223
2021 (English)In: e-Informatica Software Engineering Journal, ISSN 1897-7979, E-ISSN 2084-4840, Vol. 15, no 1, p. 133-162Article in journal (Refereed) Published
Abstract [en]

Context: Automated acceptance testing validates a product's functionality from the customer's perspective. Text-based automated acceptance tests (AATs) have gained popularity because they link requirements and testing.

Objective: To propose and evaluate a cost-effective systematic reuse process for automated acceptance tests.

Method: A systematic approach, method engineering, is used to construct a systematic reuse process for automated acceptance tests. The techniques to support searching, assessing, adapting the reusable tests are proposed and evaluated. The constructed process is evaluated using (i) qualitative feedback from software practitioners and (ii) a demonstration of the process in an industry setting. The process was evaluated for three constraints: performance expectancy, effort expectancy, and facilitating conditions.

Results: The process consists of eleven activities that support development for reuse, development with reuse, and assessment of the costs and benefits of reuse. During the evaluation, practitioners found the process a useful method to support reuse. In the industrial demonstration, it was noted that the activities in the solution helped in developing an automated acceptance test with reuse faster than creating a test from scratch i.e., searching, assessment, and adaptation parts.

Conclusion: The process is found to be useful and relevant to the industry during the preliminary investigation. 

Place, publisher, year, edition, pages
Wroclaw University of Technology, 2021. Vol. 15, no 1, p. 133-162
National Category
Software Engineering
Identifiers
URN: urn:nbn:se:bth-21989DOI: 10.37190/e-Inf210107ISI: 000711485700001OAI: oai:DiVA.org:bth-21989DiVA, id: diva2:1579815
Note

open access

Available from: 2021-07-11 Created: 2021-07-11 Last updated: 2023-06-07Bibliographically approved
In thesis
1. Realizing the systematic reuse of automated acceptance tests in practice
Open this publication in new window or tab >>Realizing the systematic reuse of automated acceptance tests in practice
2021 (English)Doctoral thesis, comprehensive summary (Other academic)
Abstract [en]

Context: Automated acceptance testing has become a relevant practice of agile software development (e.g., Extreme Programming). Automated acceptance tests (AATs) are closely tied to requirements and provide a mechanism for continuous validation of requirements as system-level tests. Studies have shown that these tests are costly to develop, maintain, and reuse.

Objectives: This thesis examines and supports the systematic reuse of automated acceptance tests by providing approaches to search, identity, adapt reusable test cases while considering the reuse costs. Additionally, the maintainability and usage of automated acceptance tests in largescale software projects are studied.

Method: We used various research methods to investigate development, reuse, and maintaining the automated acceptance tests. Workshops and interviews of practitioners were used to identify the benefits and challenges of automated acceptance tests. Next, method engineering was used to construct a systematic reuse process for automated acceptance tests. Qualitative feedback collected using a survey, and industrial demonstration examined the reuse process’s performance expectancy, effort expectancy, and necessary facilitating conditions. Two systematic literature reviews are used to identify techniques to adapt tests for future reuse opportunities and calculate the reuse costs of automated acceptance tests. Later, we developed and evaluated an approach for refactoring behavior-driven development-based automated acceptance tests using action research.

Results: A cost-aware systematic reuse process was constructed to support the reuse of automated acceptance tests containing eleven activities. For each activity, guidelines on expected input, expected output, the actors performing the activity, and techniques (automated using scripts) are suggested and evaluated. The techniques involve approaches to support development for reuse and methods to calculate the costs of reusing automated acceptance tests. The industrial evaluation of the reuse process and the techniques showed its usefulness and relevance for the industry. Furthermore, seven challenges (i.e., the scale of the software projects, ownership, lack of competence, cost benefits, specification of behaviors in large-scale projects, difficulty writing system-level test-cases, and versioning control of behaviors) and five benefits (i.e., understanding of a business aspect of requirements, improved quality of requirements, a guide to system-level use-cases, reuse of artifacts in large-scale projects, and help for test organization.) of using automated acceptance tests in large-scale projects are identified with software practitioners’ help. Later, we proposed a semiautomated four-step approach for pre-processing, measuring, ranking, and identifying refactoring candidates. The approach and the two proposed measures were successfully evaluated using two industrial projects. It was noted that similarity measures could support the maintenance of the specification base using refactoring.

Conclusions: The studies show that automated acceptance tests are reusable and can be refactored using our proposed approach. The evaluation shows that the results apply to the software industry in the evaluated context. However, further work is required to evaluate the reuse process in different contexts.

Place, publisher, year, edition, pages
Karlskrona: Blekinge Tekniska Högskola, 2021. p. 306
Series
Blekinge Institute of Technology Doctoral Dissertation Series, ISSN 1653-2090 ; 5
Keywords
Reuse, Software Engineering, Development, Testing
National Category
Software Engineering Computer Sciences
Research subject
Software Engineering
Identifiers
urn:nbn:se:bth-21999 (URN)978-91-7295-425-0 (ISBN)
Public defence
2021-09-23, J1630, BTH, Campus Gräsvik, Karlskrona, 13:00 (English)
Opponent
Supervisors
Available from: 2021-08-09 Created: 2021-08-08 Last updated: 2021-08-23Bibliographically approved

Open Access in DiVA

fulltext(874 kB)352 downloads
File information
File name FULLTEXT01.pdfFile size 874 kBChecksum SHA-512
61e1ac20a97f4b89970fed388559d2066b05857c922a786741bfc6eb63f1154d82c48a17043b62153f69e177863c7427eef6d3f36e4d1fd614a0d4fe82093fb1
Type fulltextMimetype application/pdf

Other links

Publisher's full text

Authority records

Irshad, MohsinPetersen, Kai

Search in DiVA

By author/editor
Irshad, MohsinPetersen, Kai
By organisation
Department of Software Engineering
In the same journal
e-Informatica Software Engineering Journal
Software Engineering

Search outside of DiVA

GoogleGoogle Scholar
Total: 352 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

doi
urn-nbn

Altmetric score

doi
urn-nbn
Total: 113 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf