University of Oulu

Software test automation maturity assessment and improvement based on best practices

Saved in:
Author: Wang, Yuqing1,2
Organizations: 1University of Oulu Graduate School
2University of Oulu, Faculty of Information Technology and Electrical Engineering, Information Processing Science, Empirical Software Engineering in Software, Systems and Services (M3S)
Format: ebook
Version: published version
Access: open
Online Access: PDF Full Text (PDF, 1.7 MB)
Persistent link: http://urn.fi/urn:isbn:9789526233697
Language: English
Published: Oulu : University of Oulu, 2022
Publish Date: 2022-08-24
Thesis type: Doctoral Dissertation
Defence Note: Academic dissertation to be presented with the assent of the Doctoral Programme Committee of Information Technology and Electrical Engineering of the University of Oulu for public defence in the Oulun Puhelin auditorium (L5), Linnanmaa, on 31 August 2022, at 12 noon
Tutor: Professor Mika Mäntylä
Professor Jouni Markkula
Reviewer: Professor Andy Zaidman
Professor Dietmar Pfahl
Opponent: Professor Tanja E.J. Vos
Description:

Abstract

Mature test automation is key for achieving high product quality at speed. However, many organizations still have immature test automation practices that impede them to reap expected benefits. Not all attempts to improve test automation practices are successful, usually caused by ineffective assessment and improvement.

This dissertation aims to develop the guidelines for test automation maturity assessment and improvement by synthesizing existing guidelines from various sources, demonstrating the adoption of developed guidelines, and evaluating the effectiveness of the developed guidelines with practitioners.

In this dissertation, we synthesized a taxonomy of test automation best practices from 18 test maturity models. We also reviewed 26 academic literature and 55 grey literature sources on the same topic, and found that the current literature includes the guidelines that are not covered in test maturity models, like new technical best practices and advice (e.g., improvement approaches, technical techniques, and experience-based heuristics) on conducting certain best practices. Using synthesized test automation best practices from test maturity models as the base, we developed a test automation maturity survey and distributed it in the current industry to explore the state of practice of test automation maturity. Based on 151 survey responses coming from above 100 organizations in 25 countries, several observations were made to demonstrate the adoption of test automation best practices proposed by existing test maturity models, e.g., there is a lack of guidelines on designing and executing automated tests and the right metrics to measure test automation performance in general. We observed that high levels of test automation maturity (assessed by test automation best practices from test maturity models) can lead to high product quality at speed in modern software developments, using empirical evidence from an experience study (that examined the experience of a DevOps team who succeeded in test automation maturity improvement) and a quantitative study (that collected metric data from 37 open source projects by running our test automation maturity survey and mined project repositories).

With the study results of this dissertation, future work in this research scope related to theory development works, empirical studies, and iterative studies is stimulated. Practitioners can benefit from the developed and evaluated guidelines in this dissertation to assess and improve test automation maturity.

see all

Tiivistelmä

Kypsä testiautomaatio on avainasemassa korkean tuotelaadun saavuttamisessa ilman että tarvitsee tinkiä tuotekehityksen nopeudesta. Usein organisaatioiden vielä kehittymättömät testiautomaatiokäytännöt estävät niitä saamasta automaatiolta odotettuja hyötyjä. Yritykset parantaa testiautomaatiokäytäntöjä eivät aina onnistu, mikä johtuu yleensä puutteellisesta testiautomaation kypsyydenarvioinnista ja -parantamisesta.

Tämän väitöskirjan tavoitteena on kehittää ohjeistusta testiautomaation kypsyyden arviointiin ja parantamiseen syntetisoimalla olemassa olevia ohjeita eri lähteistä, tutkimalla kehitettyjen ohjeiden omaksumista ja arvioimalla kehitettyjen ohjeiden tehokkuutta yhdessä ohjelmistoteollisuuden toimijoiden kanssa.

Väitöskirjassa syntetisoitiin testiautomaation hyvien käytäntöjen taksonomia 18 testikypsyysmallista. Kirjallisuuskatsauksessa tutkittiin 26 akateemista ja 55 harmaankirjallisuuden lähdettä. Havaittiin, että nykyinen kirjallisuus sisältää ohjeita, joita ei ole testikypsyysmalleissa, kuten uusia teknisiä hyviä käytäntöjä ja neuvoja (esim. teknisiä menetelmiä ja kokemuspohjaista heuristiikkaa) tiettyjen hyvien käytäntöjen toteuttamiseksi. Kirjallisuudesta syntetisoitujen, kypsyysmalleihin pohjautuvien hyvien käytäntöjen avulla kehitettiin kyselylomake ohjelmistoteollisuuden testiautomaation kypsyyden tilan mittaamiseen.

Yli 100 organisaatiosta ja 25 maasta saadun 151 kyselyvastauksen perusteella tehtiin havaintoja testiautomaation hyvien käytäntöjen omaksumisesta. Puutteita havaittiin testiautomaation suunnittelun ja käytön ohjeistuksessa sekä hyötyjen mittaamisen käytänteissä. Tulokset osoittavat, että testiautomaation korkea kypsyysaste voi johtaa tuotteiden korkeaan laatuun hidastamatta tuotekehityksen nopeutta nykyaikaisessa ohjelmistokehityksessä. Havainnot perustuvat sekä empiiriseen kokemustutkimukseen, jossa tutkittiin testiautomaation kypsyyden parantamisessa onnistuneen DevOps-tiimin kokemuksia että kvantitatiiviseen tutkimukseen, jossa 37 avoimen lähdekoodin projektista kerättiin dataa käyttämällä kehitettyä kyselylomaketta ja louhimalla lähdekoodin versionhallintaa, testiautomaatiojärjestelmien lokitietoja sekä virhetietokantoja.

Tämän väitöskirjan tuloksilla edistetään ohjelmistotestiautomaation tutkimuksen teorian kehittämistä ja empiiristä tutkimusta. Ohjelmistoteollisuuden edustajat voivat hyötyä väitöskirjassa kehitetyistä ja arvioiduista ohjeista testiautomaation kypsyyden arvioimiseksi ja parantamiseksi.

see all

Osajulkaisut / Original papers

Osajulkaisut eivät sisälly väitöskirjan elektroniseen versioon. / Original papers are not included in the electronic version of the dissertation.

  1. Wang, Y., Mäntylä, M., Eldh, S., Markkula, J., Wiklund, K., Kairi, T., Raulamo-Jurvanen, P., & Haukinen, A. (2019). A self-assessment instrument for assessing test automation maturity. Proceedings of the Evaluation and Assessment on Software Engineering, 145–154. https://doi.org/10.1145/3319008.3319020

    Rinnakkaistallennettu versio / Self-archived version

  2. Wang, Y., Mäntylä, M. V., Liu, Z., Markkula, J., & Raulamo‐Jurvanen, P. (2022). Improving test automation maturity: A multivocal literature review. Software Testing, Verification and Reliability, 32(3), e1804. https://doi.org/10.1002/stvr.1804

    Rinnakkaistallennettu versio / Self-archived version

  3. Wang, Y., Mäntylä, M., Demeyer, S., Wiklund, K., Eldh, S., & Kairi, T. (2020). Software test automation maturity: A survey of the state of the practice. Proceedings of the 15th International Conference on Software Technologies, 27–38. https://doi.org/10.5220/0009766800270038

    Rinnakkaistallennettu versio / Self-archived version

  4. Wang, Y., Pyhäjärvi, M., & Mäntylä, M. V. (2020). Test automation process improvement in a DevOps team: Experience report. 2020 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW), 314–321. https://doi.org/10.1109/ICSTW50294.2020.00057

    Rinnakkaistallennettu versio / Self-archived version

  5. Wang, Y., Mäntylä, M. V., Liu, Z., & Markkula, J. (2022). Test automation maturity improves product quality—Quantitative study of open source projects using continuous integration. Journal of Systems and Software, 188, 111259. https://doi.org/10.1016/j.jss.2022.111259

    Rinnakkaistallennettu versio / Self-archived version

see all

Series: Acta Universitatis Ouluensis. A, Scientiae rerum naturalium
ISSN: 0355-3191
ISSN-E: 1796-220X
ISSN-L: 0355-3191
ISBN: 978-952-62-3369-7
ISBN Print: 978-952-62-3368-0
Issue: 773
Type of Publication: G5 Doctoral dissertation (articles)
Field of Science: 113 Computer and information sciences
Subjects:
Funding: My dissertation work was mainly funded by the TESTOMAT project and our M3S research unit. I express my respectful thanks to the Tauno Tönning Research Foundation, the NLP-TD project, and the ICST doctoral student scholarship for the financial support on some parts of my doctoral studies.
Copyright information: © University of Oulu, 2022. This publication is copyrighted. You may download, display and print it for your own personal use. Commercial use is prohibited.