• Refine Query
  • Source
  • Publication year
  • to
  • Language
  • 16
  • 8
  • Tagged with
  • 24
  • 19
  • 19
  • 14
  • 14
  • 11
  • 10
  • 10
  • 9
  • 9
  • 8
  • 7
  • 7
  • 5
  • 4
  • About
  • The Global ETD Search service is a free service for researchers to find electronic theses and dissertations. This service is provided by the Networked Digital Library of Theses and Dissertations.
    Our metadata is collected from universities around the world. If you manage a university/consortium/country archive and want to be added, details can be found on the NDLTD website.
11

Huvudaspekter att Överväga för Mjukvarutestning i Komplexa Inbyggda System : En Fallstudie av Mjukvaruutveckling i Bilindustrin / Key Aspects to Consider for Software Testingin Complex Embedded Systems : A Case Study of Software Development in the Automotive Industry

Haglund El Gaidi, Gabriel January 2016 (has links)
Software development in the complex environment in the automotive industry puts high pressureon developers to develop high quality and robust software aligned to customers’ requirements. High quality software is foremost ensured by conducting software testing of the product under development. However, software testing in the automotive industry poses challenges of testing early in the development process, due to the limits of conducting tests in full-scaled vehicle environments. This challenge needs to be addressed for software development teams developing software that communicates with the complex on-board embedded system in vehicles. This study has been conducted in a case study approach at Scania CV AB in Södertälje in order to understand drivers to defects that emerge in finalized software products. Defects and drivers to defects found in finalized software products have been identified by conducting interviews with the SCPT-team responsible for the development of the product Escape. Escape is delivered to the production department and enables functions such as calibrating, set parameters, and run quality assurance tests on the on-board embedded system in vehicles. The identified defects and drivers have subsequently been discussed with experienced professionals and researchers within software testing. This provided applicable testing techniques and activities to undertake in order to address the identified drivers causing defects in finalized software products. The contribution of this study highlights the importance of incorporating software testing in early development phases in complex embedded systems as defects are more costly to correct the later they are identified. Static analysis tools have further been found to provide a suitable support to address the immense number of possible parameter combinations in vehicles. Furthermore, Software in the Loop environments have been found to be an applicable way of incorporating integration testing and system testing earlier in the development phase enabling identification of interoperability defects generally found late in the development process. Including persons responsible for testing the software in early requirements discussion has further been found to be of great importance as it minimizes the risk of misunderstandings between customers and developers. / Mjukvaruutveckling i den komplexa miljön bilindustrin befinner sig i sätter hög press på mjukvaruutvecklare att utveckla robusta mjukvaruprogram av hög kvalitet som uppfyller kundernas krav. Mjukvaruprogram av hög kvalitet är först och främst säkerhetsställd genom mjukvarutestning av produkten under utveckling. Däremot finns det en del utmaningar när det kommer till mjukvarutestning av mjukvaruprogram i bilindustrin på grund av den begränsade möjligheten till att testa programvaran i helbilsmiljöer. Team som utvecklar mjukvaruprogram som kommunicerar med det komplexa inbyggda systemet i fordon måste ta itu med denna utmaning. För att undersöka anledningar till att defekter identifieras i mjukvaruslutprodukter har denna studies tillvägagångssätt varit en fallstudie på Scania CV AB i Södertälje. Anledningar till defekter identifierade i slutprodukter har undersökts genom intervjuer med SPCT-teamet som ansvarar för att utveckla och testa produkten Escape. Escape är en produkt som används av produktionsavdelningen och erbjuder funktioner så som parametersättning, kalibrering och att köra kvalitetstester av det inbyggda systemet i fordon. De identifierade anledningarna till defekter har därefter diskuterats med erfarna mjukvarutestare inom både industrin och akademin. Det har bidragit till användbara testtekniker och testaktiviteter att ta sig an för att ta i tu med dem identifierade defekterna och dess anledningar som bidrar till defekter i slutprodukter. Forskningsbidraget från denna studie betonar hur viktigt det är att inkorporera mjukvarutestning tidigt i utvecklingsprocessen av komplexa inbyggda system eftersom defekter är dyrare att rätta till ju senare de upptäcks. Statiska analysverktyg har visat sig utgöra en användbar hjälp för att ta i tu med den stora mängden möjliga parameterkombinationer i fordon. Dessutom har Software in the Loop miljöer visat sig vara ett användbart sätt att möjliggöra integrationstestning och systemtestning tidigt i utvecklingsprocessen vilket kan identifiera defekter som vanligtvis först identifieras sent i utvecklingsprocessen. Involvera personer som är ansvariga för mjukvarutestning av produkten tidigt i kravdiskussioner har också visat sig vara viktigt för att minimera risken för missförstånd mellan kunder och utvecklare.
12

Increasing Trust in Software by Synthesizing Property-based Tests from Existing Unit Tests : A study on the expansion of existing test suites through the creation of property-based tests via invariants inferred from existing example-based unit tests / Ökad tillförlitlighet hos mjukvara genom skapance av egenskapsbaserade tester från befintliga enhetstester : En undersökning av möjligheterna kring att utöka testsviter genom att skapa egenskapsbaserade tester via invarianter utlästa från befintliga exempelbaserade tester

Uggelberg, Richard January 2022 (has links)
Many software projects include an extensive suite of example-based unit tests. The examples in the test suite can be used as an implicit specification of the behavior of the software. Inferring invariants from these examples may aid in the creation of property-based tests. However, the existing research on this topic is scarce and there is none conducted using the inference of invariants. In this thesis, we examine software projects with existing test suites. The Daikon invariant detector is used to infer invariants from test executions. The resulting invariants are then used to formalize properties to be used in property-based tests. The success of the process depends on a few variables. First, the tests have to be descriptive enough to allow any generalization to take place. Second, the Daikon invariant detector needs to be able to create an abstraction from the examples that are not too restrictive nor too lenient. Third, the format of the invariants needs to match available value generator constraints in property-based testing frameworks. Fourth, the resulting tests need to provide some benefit to the test suite. In all experiments, at least one of these requirements is not met. The conclusion is that inferred invariants are likely not useable in the creation of property-based tests. Furthermore, in instances where properties can be derived from invariants, the resulting tests do not practically improve the test suite. For the test suite to be improved, the abstraction of examples needs to describe properties of the software not contained in the existing tests. / Många mjukvaruprojekt använder sig av automatiserade enhetstester. Dessa är ofta baserade på flertalet enskilda exempel. Dessa kan ses som en implicit specifikation. Detta skulle kunna förenkla processen att skapa egenskapsbaserade tester. Tidigare forskning inom detta område är sällsynt och inga tidigare studier använder invarianter för att skapa egenskapsbaserade tester. Invariantdetektionsprogrammet Daikon används för att dynamisk utläsning av invarianter från exekvering av tester. Dessa användas sedan för att formalisera programegenskaper till egenskapsbaserade tester. Denna tekniks framgång är beroende av flera variabler. Befintliga tester måste vara tillräckligt deskriptiva för att kunna abstraheras till generalla egenskaper. Daikon behöver kunna utläsa invarianter from testexekveringen som varken är för generella eller för specifika. Invarianternas format behöver likna generatorfunktioner i egenskapsbaserade testramverk. De skapade egenskapsbaserade testerna behöver bidra positivt till programmets testsvit. I alla experiment fanns brister i åtminstone ett av dessa steg. Således är slutsatsen att automatiskt utlästa invarianter sannolikt inte är ett effektivt sätt att skapa egenskapsbaserade tester. Dessutom, i de fall då egenskapsbaserade tester skapats bidrar de inte till en förbättring av testsviten. För att förbättra testsviten måste de nya testerna beskriva egenskaper som inte redan testas av de befintliga testerna.
13

Simplifying Software Testing in Microservice Architectures through Service Dependency Graphs / Förenkla mjukvarutestningen i mikrotjänstarkitekturer genom tjänsteberoendegrafer

Alevärn, Marcus January 2023 (has links)
A popular architecture for developing large-scale systems is the microservice architecture, which is currently in use by companies such as Amazon, LinkedIn, and Uber. The are many benefits of the microservice architecture with respect to maintainability, resilience, and scalability. However, despite these benefits, the microservice architecture presents its own unique set of challenges, particularly related to software testing. Software testing is exacerbated in the microservice architecture due to its complexity and distributed nature. To mitigate this problem, this project work investigated the use of a graph-based visualization system to simplify the software testing process of microservice systems. More specifically, the role of the visualization system was to provide an analysis platform for identifying the root cause of failing test cases. The developed visualization system was evaluated in a usability test with 22 participants. Each participant was asked to use the visualization system to solve five tasks. The average participant could on average solve 70.9% of the five tasks correctly with an average effort rating of 3.5, on a scale from one to ten. The perceived average satisfaction of the visualization system was 8.0, also on a scale from one to ten. The project work concludes that graph-based visualization systems can simplify the process of identifying the root cause of failing test cases for at least five different error types. The visualization system is an effective analysis tool that enables users to follow communication flows and pinpoint problematic areas. However, the results also show that the visualization system cannot automatically identify the root cause of failing test cases. Manual analysis and an adequate understanding of the microservice system are still necessary. / En populär arkitektur för att utveckla storskaliga system är mikrotjänstarkitekturen, som för närvarande används av företag som Amazon, LinkedIn och Uber. Det finns många fördelar med mikrotjänstarkitekturen med avseende på underhållbarhet, motståndskraft och skalbarhet. Men trots dessa fördelar presenterar mikrotjänstarkitekturen sin egen unika uppsättning utmaningar, särskilt med hänsyn till mjukvarutestningen. Mjukvarutestningen försvåras i mikrotjänstarkitekturen på grund av dess komplexitet och distribuerade natur. För att mildra detta problem undersökte detta projektarbete användningen av ett grafbaserat visualiseringssystem för att förenkla mjukvarutestprocessen för mikrotjänstsystem. Mer specifikt var visualiseringssystemets roll att tillhandahålla en analysplattform för att identifiera grundorsaken till misslyckade testfall. Det utvecklade visualiseringssystemet utvärderades i ett användbarhetstest med 22 deltagare. Varje deltagare ombads att använda visualiseringssystemet för att lösa fem uppgifter. Den genomsnittliga deltagaren kunde i genomsnitt lösa 70.9% av de fem uppgifterna korrekt med ett genomsnittligt ansträngningsbetyg på 3.5, på en skala från ett till tio. Den upplevda genomsnittliga nöjdheten med visualiseringssystemet var 8.0, också på en skala från ett till tio. Projektarbetet drar slutsatsen att grafbaserade visualiseringssystem kan förenkla processen att identifiera grundorsaken till misslyckade testfall för minst fem olika feltyper. Visualiseringssystemet är ett effektivt analysverktyg som gör det möjligt för användare att följa kommunikationsflöden och peka ut problemområden. Men resultaten visar också att visualiseringssystemet inte automatiskt kan identifiera grundorsaken till misslyckade testfall. Manuell analys och en grundlig förståelse av mikrotjänstsystemet är fortfarande nödvändigt.
14

Minimization of Model-based Tests in Modbat / Minimering av modellbaserade tester i Modbat

Borg, Caroline January 2023 (has links)
Model-based testing (MBT) is a promising testing method with advantages like exhaustive exploration and high maintainability. However, one notable downside is that the generated tests usually contain much unnecessary noise. This noise can present itself as superfluous actions that bear no effect on test outcome — worsening comprehensibility and inflating test size. Generalpurpose minimization techniques like delta debugging have been successful in minimizing similar input before. The process involves removing elements that are redundant for satisfying given criteria, e.g., that a test still identifies a specific fault. In this thesis, we formulate the modmin algorithm which makes use of a hierarchical delta debugging approach to minimize sequences generated with Modbat — an open source MBT tool based on the extended finite-state machine (EFSM). One after the other, the algorithm attacks three common sub-structures found within the generated tests: model instances, loops, and transitions. To evaluate the work, we extended Modbat with modmin and applied it to tests generated from a set of ten models of varying complexity. The results show that modmin is very proficient at minimizing the tests generated from our model set and that it does so at a negligible cost. / Modellbaserad testning är en lovande teknik med fördelar som uttömande sökning och hög underhållbarhet. En nackdel är däremot att de genererade testfallen tenderar att innehålla onödig information. Ett testfall ska, med fördel, vara så kort och koncist som möjligt, och överflödiga instruktioner förvärrar både testbegriplighet och teststorlek. Minimeringsstrategier som delta debugging har med goda resultat används för att minimera liknande datastrukturer tidigare. Processen innebär vanligtvis att man plockar bort element som inte är nödvändiga för att särskilda kriterier ska vara uppfyllda. Exempelvis att ett test fortfarande identifierar samma fel som innan. I det här verket formulerar vi och implementerar modmin-algoritmen, en algoritm som bygger på hierarkisk delta debugging för att minimera testfall generade med det modellbaserade testningsverktyget Modbat. En efter en attackerar vår algoritm tre vanliga delstrukturer som vi har identifierat i Modbats testfall: modellinstanser, slingor, och individuella övergångar. Vi utvärderade arbetet genom att utöka Modbats öppna källkod med modmin och sen minimera testfall genererade från tio olika modeller av varierande komplexitet. Resultaten visar att modmin klarar av att minimera testfall generade från alla våra modeller och att det bara tillför en försumbar kostnad vad gäller systemresurser eller körtid.
15

Improve game performance tracking tools : Heatmap as a tool / Förbättra prestandaspårningsverktyg : Färgdiagram för visualisering av prestanda

Wessman, Niklas January 2022 (has links)
Software testing is a crucial development technique to capture defects and slow code. When testing 3D graphics, it is hard to create automatic tests that detect errors or slow performance. Finding performance issues in game maps is a complex task that requires much manual work. Gaming companies such as EA DICE could benefit from automating the process of finding these performance issues in their game maps. This thesis tries to solve the problem by creating automatic tests where the camera is placed in a top-down perspective and flies over the in-game map, recording the time it takes to create render and client simulation frames for each map segment. The resulting trace is then visualised as a heatmap, where the mean frame creation times are rendered with pseudo colouring techniques to help pinpoint possible issues for the test engineers. The key findings of this thesis are that a heatmap visualisation of frame creation times saves much time for the developers trying to find these issues; it also lowers the amount of knowledge needed to find performance issues. This tool automates a process that formerly needed considerable manual work to get the same result. Now, artists with low coding experience can find performance issues without the technical knowledge of a Quality Assurance engineer. The thesis also highlights the drawbacks of a top-down perspective of camera trace since this is not how EA DICE games are usually rendered for the player in runtime. With this thesis as a base, other tests could be made with other ways of moving the camera and visualising the trace. / Mjukvarutestning är en viktig programvaruutvecklings teknik för att fånga felaktig eller långsam kod. Det är svårt att skapa automatiska tester för 3D grafik som hittar fel eller dålig prestanda i koden. Att hitta prestandaproblem i spelkartor är en komplex uppgift som kräver mycket manuellt arbete. Spelföretag såsom EA DICE skulle dra fördel av att automatisera processen att hitta dessa prestandaproblem i spelkartor. Denna uppsats försöker lösa detta genom att skapa automatiska tester där kameran placeras i ett uppifrån-och-ned-perspektiv och sedan flyger genom banan i spelet samtidigt som den samlar in data på hur lång tid det tar för renderings-bildrutor och klient-simulerings-bildrutor att skapas för varje ban-segment. Den resulterande datan är därefter visualiserade som ett färgdiagram, där medelvärdet på tiden för att skapa varje bildruta ritas upp med en psuedofärgningsteknik för att markera möjliga problemområden för testingenjörerna. Nyckelupptäckter för denna uppsats är att färgdiagramsvisualiseringen av bildruta-skapande-tider sparar mycket tid för utvecklare som försöker hitta prestandaproblem. Det minskar också kunskapströskeln som behövs för att lokalisera prestandaproblem. Detta verktyg automatiserar en process som tidigare krävde omfattande manuellt arbete för att få samma resultat. Numera kan game artists med låg koderfarenhet hitta dessa prestandaproblem utan den tekniska kunskapen hos en kvalitetskontroll-ingenjör. Den här uppsatsen visar också nackdelar med ett uppifrån-och-ned-perspektiv för kameran då det inte är så EA DICE spel normalt renderas för spelarna. Den här uppsatsen kan användas som utgångspunkt för andra som vill utveckla testverktyg och med fördel ta i beaktning de utvecklingspunkter denna uppsats belyser.
16

Introducing software testing in an SME : An investigation of software testing in a web application / Introduktion av mjukvarutestning i ett SMF : En undersökning av mjukvarutestning i en webbapplikation

Arn, Per January 2023 (has links)
Quality assurance and software testing of software artifacts is as important as ever and this is especially so the case in web applications. The web applications of today are more complex and are used in more critical systems at a larger scale than ever before. However, testing of these applications is very challenging due to their dynamic nature. It is somewhat challenging to find clear and up-to-date guidelines on how to implement and evaluate regression software testing in small and medium-size enterprises (SME’s) developing web applications. The purpose of this thesis was to investigate the problem at hand and propose an approach to implementing software regression testing in web applications for SME’s. That is, recommending what to test, recommending what kind of software testing could be implemented and using what state of the art front end testing frameworks. An in-depth literature study was conducted to see what had been done in the past and present. Two rounds of semi structured in-depth interviews were conducted with software developers at the company where this thesis was conducted. The main purpose of the first interview was to find business goals from which to derive and subsequently create a testing suite in four different testing frameworks; Cypress, Jest, Playwright and Vitest. The purpose of the second interview was to evaluate and compare the aforementioned testing suites in order to propose an approach on software testing in web applications. In addition, code coverage and mutation scoring was also considered when evaluating the testing suites. The findings of this thesis is that a reasonable approach of introducing software testing into an SME which develops a web application, is to use business requirements for generating test cases and prioritizing end-to-end testing since the perceived benefits of the latter in this thesis far outweigh the benefits of the component testing suites although a combination of both would be the best of both worlds. Although this thesis was conducted on a web application written in React, the findings and recommendations can be applied to any front end framework such as Angular or Vue. / Kvalitetssäkring och testning av mjukvara är lika viktigt som alltid och detta är i synnerhet även fallet i webbapplikationer. Dagens webbapplikationer är mer komplexa och används i mer kritiska system på en större skala än någonsin tidigare. Dessvärre är det svårt att testa dessa applikationer eftersom att de är dynamiska. Det är svårt att hitta riktlinjer för hur man ska implementera och utvärdera regressionstester på små och medelstora företag (SMF) som utvecklar webbapplikationer. Syftet med denna uppsats var att undersöka problemet och föreslå en riktlinje för hur man kan implementera regressionstestning i SMF och i webbapplikationer. Detta innebär att föreslå vad man kan testa, vilken form av mjukvarutestning man kan implementera och med vilka moderna testningsramverk man kan göra detta med. En ingående litteraturstudie genomfördes för att ta reda på vad som hade gjorts tidigare inom området. Två rundor av semistrukturerade intervjuer genomfördes med mjukvaruutvecklarna på företaget där uppsatsen genomfördes. Syftet med den första intervjun var att hitta företagsmål som sedan agerade grund till testningssviter i fyra olika ramverk; Cypress, Jest, Playwright och Vitest. Syftet med den andra intervjun var att utvärdera och jämföra dessa testsviter för att rekommendera ett tillvägagångssätt för att implementera mjukvarutestning i webbapplikationer. Utöver intervjuerna så bidrog mutationspoäng och kodtäckning till rekommendationerna. Uppsatsen finner att ett rimligt sätt att implementera regressionstester i ett SMF och en webbapplikation är att generera testfall utifrån affärskrav och att prioritera testning på användarnivå eftersom att fördelarna från denna nivå av testning överväger fördelarna från komponenttestning. Allra helst bör man implementera en kombination av båda nivåerna. Fastän denna uppsats undersökte en webbapplikation i React så kan dessa upptäckter och rekommendationer även tillämpas på vilket frontendramverk som helst så som exempelvis Angular eller Vue.
17

Data Visualization of Software Test Results : A Financial Technology Case Study / Datavisualisering av Mjukvarutestresultat : En Fallstudie av Finansiell Teknologi

Dzidic, Elvira January 2023 (has links)
With the increasing pace of development, the process of interpreting software test results data has become more challenging and time-consuming. While the test results provide valuable insights into the software product, the increasing complexity of software systems and the growing volume of test data pose challenges in effectively analyzing this data to ensure quality. To address these challenges, organizations are adopting various tools. Visualization dashboards are a common approach used to streamline the analysis process. By aggregating and visualizing test results data, these dashboards enable easier identification of patterns and trends, facilitating informed decision-making. This study proposes a management dashboard with visualizations of test results data as a decision support system. A case study was conducted involving eleven quality assurance experts with a number of various roles, including managers, directors, testers, and project managers. User interviews were conducted to evaluate the need for a dashboard and identify relevant test results data to visualize. The participants expressed the need for a dashboard, which would benefit both newcomers and experienced employees. A low-fidelity prototype of the dashboard was created and A/B testing was performed through a survey to prioritize features and choose the preferred version of the prototype. The results of the user interviews highlighted pass-rate, executed test cases, and failed test cases as the most important features. However, different professions showed interest in different test result metrics, leading to the creation of multiple views in the prototype to accommodate varying needs. A high-fidelity prototype was implemented based on feedback and underwent user testing, leading to iterative improvements. Despite the numerous advantages of a dashboard, integrating it into an organization can pose challenges due to variations in testing processes and guidelines across companies and teams. Hence, the dashboards require customization. The main contribution of this study is twofold. Firstly, it provides recommendations for relevant test result metrics and suitable visualizations to effectively communicate test results. Secondly, it offers insights into the visualization preferences of different professions within a quality assurance team that were missing in previous studies. / Med den ökande utvecklingstakten har processen att tolka testresultatdata för programvara blivit mer utmanande och tidskrävande. Även om testresultaten ger värdefulla insikter i mjukvaruprodukten, innebär den ökande komplexiteten hos mjukvarusystemen och den växande volymen testdata utmaningar när det gäller att effektivt analysera dessa data för att säkerställa kvalitet. För att möta dessa utmaningar använder organisationer olika verktyg. Visualiseringspaneler är ett vanligt tillvägagångssätt som används för att effektivisera analysprocessen. Genom att aggregera och visualisera testresultatdata möjliggör dessa instrumentpaneler enklare identifiering av mönster och trender, vilket underlättar välgrundat beslutsfattande. Den här studien föreslår en management-panel med visualiseringar av testresultatdata som ett beslutsstödssystem. En fallstudie genomfördes med elva experter inom kvalitetssäkring med olika roller, inklusive chefer, direktörer, testare och projektledare. Användarintervjuer genomfördes för att utvärdera behovet av en panel och identifiera relevanta testresultatdata att visualisera. Deltagarna uttryckte behovet av en visualiseringspanel, som skulle gynna både nyanställda och erfarna medarbetare. En prototyp av panelen med låg detaljnivå skapades och A/B-testning genomfördes genom en enkät för att prioritera funktioner och välja den föredragna versionen av prototypen. Resultaten av användarintervjuerna lyfte fram andel av godkända testresultat, exekverade testfall och misslyckade testfall som de viktigaste egenskaperna. Men olika yrkesgrupper visade intresse för olika testresultatmått, vilket ledde till skapandet av flera vyer i prototypen för att tillgodose olika behov. En prototyp med hög detaljnivå implementerades baserat på feedback och genomgick användartestning, vilket ledde till iterativa förbättringar. Trots de många fördelarna med en instrumentpanel kan det innebära utmaningar att integrera den i en organisation på grund av variationer i testprocesser och riktlinjer mellan företag och team. Därför kräver paneler anpassning. Det huvudsakliga bidraget från denna studie är dubbelt. För det första ger den rekommendationer för relevanta testresultatmått och lämpliga visualiseringar för att effektivt kommunicera testresultat. För det andra ger den insikter i visualiseringspreferenser för olika yrken inom ett kvalitetssäkringsteam vilket saknats i tidigare studier.
18

Mätbart värde av testautomation : En design science research studie om automation av användargränssnittstestning i ett kassasystem / Measurable value of test automation : A design science research study on automation of user interface testing in a point-of-sale system

Rucinska, Karolina January 2024 (has links)
I takt med ökad användning av olika slags informationssystem växer även behovet av att testa mjukvaran, vilket innebär att allt fler vill komma igång med testautomation. Denna studie syftar till att beskriva hur man går tillväga för att ta första steget mot testautomationen med hjälp av Robot Framework, samt betona vikten av kravspecifikationer. Studien är en Design Science Research (designbaserad forskning) som löser ett verkligt problem på ett verkligt företag som i dagsläget anställer en hel avdelning av manuella testare och resulterar i en artefakt vilkens fullständig arkitektur redovisas i denna rapport. Problemet går ut på att automatisera ett testflöde, det vill säga en samling av tester som utförs manuellt. Testflödet behandlar den mest komplexa komponenten i hela systemet och tar en hel arbetsdag för manuella testare. Efter utförlig analys och automation förkortas testningstiden till tjugo minuter. Slutprodukten är en enkel applikation som guidar användaren igenom testet där användaren får välja vilka tester ska exekveras, samt sparar exekveringsresultat bestående av loggfiler och (om så önskats) en skärminspelning i en zip-fil. / As the usage of various information systems increases, so does the need to test software, meaning that more companies are interested in getting started with test automation. This study aims to describe how to proceed in order to take the first step towards test automation using Robot Framework, as well as to emphasize the importance of requirement specifications. The study is a Design Science Research, which is solving a real-life problem in a real company that currently employs a whole department of manual testers and is leading to the development of an artifact. The complete architecture of the artifact is disclosed in this report. The problem involves automating a test flow, that is, a collection of tests that are executed manually. The test is carried out on the most complex component in the entire system and takes a whole workday for manual testers. After thorough analysis and automation, the testing time is shortened to twenty minutes. The end product is a simple application that guides the user through the test where the user gets to choose which tests shall be executed, and saves the execution results consisting of log files and (if so wished) a screen recording in a zip file.
19

Syntax-Based Dependency Discovery : Extracting Dependencies Between Integration Test Cases for Passive Testing / Syntaxbaserad upptäckt av beroenden : Extrahering av beroenden mellan integrationstestfall för passiv testning

Halldoff, David, Sten, Martin January 2023 (has links)
Modern-day vehicles consist of numerous electronic computing devices with accompanying software. Since vehicles are generally classified as safety-critical systems, rigorous testing strategies have to be deployed to ensure correct operation of the embedded software. Testing in an active sense is understood to be the main testing method for software in general. The main characteristic of active testing is that test cases have complete control over the system under test, warranting sequential execution of test cases. To complement active testing a method called passive testing is being researched, where the main benefit compared to active testing is that the evaluation of test cases becomes parallelizable. As passive testing opens up for concurrency, the issue of not recognizing faulty behavior arises. This could be the case when simultaneously testing functions which share an output, and the incorrect behavior of a function is being masked by the correct behavior of another function. To avoid vacuous test results, the evaluation of dependent test cases can be separated. Previous work describes the process of extracting dependencies between test cases from requirement specifications. However, this approach is not suitable when test cases are derived from various artifacts. In this thesis we present a syntax-based approach for dependency discovery between test cases. The approach was evaluated through a case study using integration test cases developed for active hardware-in-the-loop testing at Scania CV. Dependencies between 946 test cases have been extracted and the test cases were grouped into three categories, with 286 test cases being identified as independent. The approach shows some potential for evaluating test cases written for active testing, but the results indicate that using test cases written specifically for passive testing may yield better results. The approach also proved to be useful for finding bugs and deviations in scripts. Thus, the method has proven useful for discovering dependencies from syntax, but the results are strongly dependent on the complexity and commonality of the scripts. / Moderna fordon innehåller åtskilliga elektroniska kontrollenheter med medföljande programvara. Eftersom fordon ofta anses vara säkerhetskritiska system krävs robusta teststrategier av den inbyggda mjukvaran för att säkerställa korrekt drift. Aktiv testning är för nuvarande den vanligaste metoden för att testa mjukvara. Den huvudsakliga egenskapen för aktiv testning är att testfall har total kontroll över systemet som är satt under test, vilket medför sekventiell utvärdering av testfall. För att komplettera aktiv testning undersöks en metod som kallas passiv testning, där den största fördelen gentemot aktiv testning är att utvärderingen av testfall kan ske parallellt. Att utvärdera testfall samtidigt medför dock att felaktigt beteende i mjukvaran potentiellt kan maskeras. Detta kan ske då flera funktioner delar utsignaler, och en funktions felaktiga beteende maskeras av en annan funktions korrekta beteende. För att undvika tomma sanningar som testresultat, kan utvärderingen av testfall som har ett beroende mellan dem separeras. Föregående arbeten inom området beskriver processen för att extrahera beroenden mellan testfall från kravspecifikationer. Denna metod är dock inte lämplig när testfall är baserade på flera olika artefakter. I detta examensarbete presenterar vi en syntaxbaserad metod för att hitta beroenden mellan testfall. Metoden utvärderades genom en fallstudie på Scania CV, där aktiva integrationstestfall för hardware-in-the-loop användes för analys. Beroenden mellan 946 testfall kunde extraheras och testfallen grupperades i tre olika kategorier, där 286 klassificerades som oberoende. Metoden visar potential för att analysera testfall skrivna för aktiv testning, men resultaten indikerar att testfall skrivna specifikt för passiv testning kan generera ett bättre resultat. Ett oväntat men positivt utfall är att metoden i viss grad kan användas för att hitta buggar och avvikelser i skript. Således har metoden visats användbar för att hitta beroenden från syntax, men resultatet beror starkt på skriptens komplexitet och gemensamhet.
20

Model-Based API Testing for Real-Time Clearing Systems. / Modellbaserad API-testning för Real-Time Clearing

Danker, Anton January 2024 (has links)
Model-Based Testing has shown tangible benefits in previous research exploring widespread domains. Clearing systems in financial markets however are large software systems in which these approaches rarely have been explored. This paper in particular explores the Model-Based Testing approach using Modbat, a specialized tool based on extended finite-state machines, as a complementary testing approach on software clearing systems at Nasdaq. In particular, the approach is applied to functionalities of the system to test both its ability to find bugs undiscovered by traditional methods, as well as to measure its effectiveness and efficiency in creating reliable coverage in short amounts of time. In this study, we show that the model-based Modbat approach can achieve high code coverage with relatively little effort. 77 % of the production coverage was achieved with very few Modbat test runs. Additionally, only ∼ 9-14 % of the same lines of code, and a fraction of the time were required to achieve these results. From this, we conclude that Model-Based Testing approaches such as Modbat allow for significantly more efficient testing in terms of coverage over time compared to manual approaches. / Modellbaserad testning har visat på konkreta fördelar i tidigare forskning som utforskat omfattande områden. Clearingsystem inom finansmarknader är dock stora programvarusystem där dessa metoder sällan har utforskats. Denna arbete utforskar specifikt modellbaserad testning med användning av Modbat, ett specialiserat verktyg baserat på utökade ändliga automater, som ett kompletterande testningsmetodik för programvarurensningssystem på Nasdaq. Särskilt tillämpas metoden på specifika funktioner i systemet för att testa både dess förmåga att hitta buggar som inte upptäckts av traditionella metoder och att mäta dess effektivitet att skapa pålitlig täckning av kod på kort tid. I denna studie visar jag att den modellbaserade Modbat-metoden kan uppnå hög kodtäckning med relativt lite ansträngning. 77 % av produktionskoden täcktes med mycket få Modbat-testkörningar. Dessutom krävdes endast cirka 9-14 % av samma LOC, och en bråkdel av tiden för att uppnå dessa resultat.

Page generated in 0.2048 seconds