https://www.mdu.se/

mdu.sePublications
System disruptions
We are currently experiencing disruptions on the search portals due to high traffic. We are working to resolve the issue, you may temporarily encounter an error message.
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
Software Test Results Exploration and Visualization with Continuous Integration and Nightly Testing
Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.ORCID iD: 0000-0003-1688-6937
Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.ORCID iD: 0000-0003-0611-2655
Mälardalen University, School of Innovation, Design and Engineering, Embedded Systems.ORCID iD: 0000-0002-5032-2310
(English)Manuscript (preprint) (Other academic)
Abstract [en]

Software testing is key for quality assurance of embedded systems. However, with increased development pace, the amount of test results data risks growing to a level where exploration and visualization of the results are unmanageable. This paper covers a tool, Tim, implemented at a company developing embedded systems, where software development occurs in parallel branches and nightly testing is partitioned over software branches, test systems and test cases. Tim aims to replace a previous solution with problems of scalability, requirements and technological flora. Tim was implemented with a reference group over several months. For validation, data was collected both from reference group meetings and logs from the usage of the tool. Data was analyzed quantitatively and qualitatively. The main contributions from the study include the implementation of eight views for test results exploration and visualization, the identification of four solutions patterns for these views (filtering, aggregation, previews and comparisons), as well as six challenges frequently discussed at reference group meetings (expectations, anomalies, navigation, integrations, hardware details and plots). Results are put in perspective with related work and future work is proposed, e.g. enhanced anomaly detection and integrations with more systems such as risk management, source code and requirements repositories.

National Category
Software Engineering
Research subject
Computer Science
Identifiers
URN: urn:nbn:se:mdh:diva-56035OAI: oai:DiVA.org:mdh-56035DiVA, id: diva2:1598818
Funder
Knowledge Foundation, 20150277Available from: 2021-09-29 Created: 2021-09-29 Last updated: 2022-11-09Bibliographically approved
In thesis
1. Automated System-Level Software Testing of Industrial Networked Embedded Systems
Open this publication in new window or tab >>Automated System-Level Software Testing of Industrial Networked Embedded Systems
2021 (English)Doctoral thesis, comprehensive summary (Other academic)
Abstract [en]

Embedded systems are ubiquitous and play critical roles in management systems for industry and transport. Software failures in these domains may lead to loss of production or even loss of life, so the software in these systems needs to be reliable. Software testing is a standard approach for quality assurance of embedded software, and many software development processes strive for test automation. Out of the many challenges for successful software test automation, this thesis addresses five: (i) understanding how updated software reaches a test environment, how testing is conducted in the test environment, and how test results reach the developers that updated the software in the first place; (ii) selecting which test cases to execute in a test suite given constraints on available time and test systems; (iii) given that the test cases an run on different configurations of connected devices, selecting which hardware to use for each test case to be executed; (iv) analyzing test cases that, when executed over time on evolving software, testware or hardware revisions, appear to randomly fail; and (v) making test results information actionable with test results exploration and visualization.

The challenges are tackled in several ways. First, to better understand the flow of information in the embedded systems software development process, interviews at five different companies were conducted. The results show how visualizations and a test results database support decision-making. Results also describe the overall flow of information in software testing: from developers to hardware in the test environment, and back to developers. Second, in order to address the challenges of test selection and hardware selection, automated approaches for testing given resource constraints were implemented and evaluated using industrial data stemming from years of nightly testing. It was shown that these approaches could solve problems such as nightly testing not finishing on time, as well as increasing hardware coverage by varying hardware selection over test iterations. Third, the challenge of intermittently failing tests was addressed with a new metric that can classify test cases as intermittently or consistently failing. Again, by using industry data, factors that lead to intermittent failures were identified, and similarities and differences between root causes for intermittently and consistently failing tests were observed. Finally, in order to better render test results actionable, a tool was implemented for test results exploration and visualization. The implementation was evaluated using a reference group and logging of the tool’s usage. Solution patterns and views of the tool were identified, as well as challenges for implementing such a tool.

Abstract [sv]

Inbyggda system finns överallt och fyller viktiga roller i ledningssystem för industri och transport. Här kan mjukvarufel leda till produktionsbortfall eller till och med dödsfall, så mjukvaran i systemen måste vara tillförlitlig. Mjukvarutestning är en standardmetod för att kvalitetssäkra mjukvaran i inbyggda system, och många processer för mjukvaruutveckling strävar efter automatiserad testning. Av de många utmaningarna för framgångsrik testautomatisering täcker denna avhandling fem: (i) att förstå hur uppdaterad mjukvara når en testmiljö, hur testning utförs i testmiljön och hur testresultat når tillbaka till utvecklarna som uppdaterade mjukvaran; (ii) att välja vilka testfall som ska exekveras i en testsvit givet begränsningar i tillgänglig tid och tillgängliga testsystem; (iii) givet att testfall körs på olika konfigurationer av anslutna enheter, hur väljs hårdvaran som ska användas för varje testfall ut; (iv) att analysera testfall som, när de körs upprepade gånger med mjukvara, testvara eller hårdvara under utveckling, verkar slumpmässigt påvisa fel; och (v) att göra testresultat mer användbara genom göra det möjligt att utforska och visualisera den.

Utmaningarna möts på flera sätt. För det första, för att bättre förstå informationsflödet i utvecklingsprocessen för mjukvaran i inbyggda system så genomfördes intervjuer på fem olika företag. Resultaten visar hur visualiseringar och en testresultatsdatabas stödjer beslutsfattande. Resultaten beskriver också det övergripande informationsflödet i mjukvarutestning: från utvecklare till hårdvara i testmiljön och tillbaka till utvecklarna. För det andra, för att ta itu med utmaningarna vid testselektion och hårdvaruselektion, implementerades och utvärderades automatiserade metoder för testning givet resursbegränsningar, med hjälp av industriella data från flera år av nattliga tester. Dessa tillvägagångssätt kunde lösa problem som att nattliga tester inte avslutas i tid, och kan även öka hårdvarutäckningen genom att variera hårdvaruselektionen över testiterationer. För det tredje angrips utmaningen med intermittenta tester med en ny metrik för att klassificera testfall som intermittent eller konsekvent påvisar fel. Genom att återigen använda industriellt data så identifierades faktorer som leder till intermittenta tester, och likheter och skillnader i rotorsaker för intermittenta och konsekventa tester identifierades. Slutligen, för att göra testresultaten mer användbara, implementerades ett verktyg för utforskning och visualisering av testresultat. Implementationen utvärderades med hjälp av en referensgrupp samt av loggning av verktygets användning. Lösningsmönster och verktygets vyer identifierades, liksom utmaningar för att implementera ett sådant verktyg.

Place, publisher, year, edition, pages
Västerås: Mälardalen University, 2021
Series
Mälardalen University Press Dissertations, ISSN 1651-4238 ; 349
National Category
Computer Sciences
Research subject
Computer Science
Identifiers
urn:nbn:se:mdh:diva-56036 (URN)978-91-7485-529-6 (ISBN)
Public defence
2021-11-22, Gamma och online via Teams, Mälardalens högskola, Västerås, 13:15 (English)
Opponent
Supervisors
Note

Available from: 2021-10-13 Created: 2021-10-13 Last updated: 2022-11-08Bibliographically approved

Open Access in DiVA

No full text in DiVA

Authority records

Strandberg, Per ErikAfzal, WasifSundmark, Daniel

Search in DiVA

By author/editor
Strandberg, Per ErikAfzal, WasifSundmark, Daniel
By organisation
Embedded Systems
Software Engineering

Search outside of DiVA

GoogleGoogle Scholar

urn-nbn

Altmetric score

urn-nbn
Total: 284 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