Spelling suggestions: "subject:"integrationstestning"" "subject:"integrationstestningen""
1 |
Agentbaserad Simulering som Kontinuerlig Testning av API:er : Utveckling av Simulationsbaserad Testning på uppdrag av Coredination ABBoström, Joakim, Risén, Felix January 2017 (has links)
Ett simulationsbaserat testningssystem tas fram i samarbete med molntjänsten Coredination för att testa deras API (Application Programing Interface) och tjänst. Design och utveckling skedde iterativt med en loggbok för informationsinsamling. Arbetet baserade sig i riktlinjer för agentbaserad simulering framtagna av Macal & North (2010). Simulationstestningen bestod av ett antal agenter som med hjälp utav beteendeträd fattade beslut som liknar de beslut en användare av systemet skulle göra. Från detta togs ett antal lärdomar samt en systemarkitektursmodell fram för att underlätta utveckling av simulationsbaserad testning i andra sammanhang. Dessa lärdomar innefattar att göra en tydlig förstudie, arbeta iterativt med projektet, utveckla för modularitet och initialt för kommunikation mellan agenterna, bygg på nodernas funktionalitet i efterhand, avsätt gott om tid för design av beteendeträd, utveckla endast det absolut enklaste fallet först samt var inte rädd att ändra systemarkitekturen utefter agenternas planerade beteenden.
|
2 |
Testning av informationsinfrastrukturerKhalatyan, Ashot, Kemppi Latif, Ari January 2019 (has links)
Informationsinfrastrukturer (II) är ett ständigt evolverande system som binder samman flera olika informationssystem till en fungerande helhet. Vi har undersökt SSBTEK som är en II som binder samman olika myndigheters informationssystem. I det här arbetet har vi fördjupat oss i hur testning av II går till, vilka faktorer som är avgörande för en omfattande II-testning. Vi har genomfört en fallstudie för att närmare undersöka en II och intervjuat dess designer och testare. Det vi har kommit fram till är att testmiljötillhandahållning från designerns sida kan spela den centrala rollen i II-testningen eftersom det kan öka förståelsen av komplexa data och möjliggör testning parallellt med vidareutvecklingen av II. Andra faktorer som är viktiga är kommunikation mellan designern och testaren och testdatakvalitet. / Information Infrastructure (II) is a constantly evolving system that connects several different information systems. We have examined SSBTEK which is an II that connects different state authority information systems. In this research we have studied the process of testing in II and which factors are crucial for a comprehensive II testing. We have conducted a case study to investigate II and interviewed its designers and testers. Our findings indicate that test environment availability is playing a crucial role in II testing because it can increase the understanding of complex data and enables testing parallel with the development of the II. Other important factors that are important in II testing are test data quality and communication between designers and testers.
|
3 |
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 testningHalldoff, 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.
|
4 |
Teaching software testing in a modern development environment / Lära ut mjukvarutestning i en modern utvecklingsmiljöGawell, Anders, Kallin, Anton January 2019 (has links)
All developers understand the benefits of testing their code to ensure its functionality. Today’s market is moving further towards design principles where testing is a central or driving force during development. This puts a certain pressure on academia to supply these skills to their students.Recently the course II1302 Projects and project methods at the Royal Institute of Technology in Kista made a concerted effort to introduce the students of the course to these modern concepts. This thesis investigates how areas of testing can effectively be introduced to the students in the course, utilizing a tailored example that takes the area of testing into particular consideration and how to automate it via DevOps-tools provided by a cloud-based service. Further, it also makes an attempt to provide additional material to be used for teaching testing in conjunction with the example provided.The case study covers the development of an example application, meant to mirror a typical student project. It also covers how this was used for teaching the students about the testing areas considered. The covered testing areas include unit testing, integration testing and UI testing. With these given testing areas, the application and an associated learning module was developed for each area in question. Relevant standards, strategies and approaches was also identified for each of these areas.The thesis also presents important properties to take into consideration when developing similar examples in the future, based on the experiences obtained during the study. These include needs such as understandable by inexperienced students, applicability outside the course, adherence to established standards, tools that are simple to use and an architectural structure that allows for testing.Some improvements are also recommended: the students would benefit from learning software testing from an early stage of their studies. The content of the learning modules should also be brought to the students earlier in the course, so it can be applied in their projects at an early stage as well.Further research is also recommended to evaluate the suitability of using other cloud-based environments instead, and to evaluate the applicability of the learning modules for students of varying disabilities. / Alla utvecklare förstår fördelarna med att testa kod för att garantera dess funktionalitet. Dagens industri går i en riktning där testning spelar en central del av design under utveckling av mjukvara. Denna tendens lägger en viss press på högskolan att lära ut dessa erfarenheter till dess studenter.På senare tid har kursen II1302 Projekt och projektmetoder på Kungliga Tekniska Högskolan i Kista tagit en stor ansats för att introducera sina studenter inför dessa moderna koncept. Denna uppsats undersöker hur testningsområdet effektivt kan introduceras till studenterna inom denna kurs, genom att utnyttja ett egengjort exempel som har området i fokus, samt att automatisera detta via DevOps-verktyg tillhandahållna av molnbaserade tjänster. Dessutom görs även en ansats för att tilldela ytterligare material som kan användas för att lära ut testning av mjukvara i samband med det givna exemplet.Fallstudien omfattar utvecklingen av en exempelapplikation, som var avsedd att likna ett typiskt studentprojekt. Den täcker även hur denna användes för att lära ut de betraktade testningsområdena till studenterna. De täckta områdena av testning inkluderar enhetstestning, integrationstestning och testning av användargränssnitt. Med dessa givna testningsområden utvecklades både applikationen och dess associerade lärmoduler för vardera testningområde i fråga. Relevanta standarder, strategier och metoder var också identifierade för vardera av dessa områden.Denna uppsats presenterar även ett antal viktiga egenskaper att hålla i åtanke vid utveckling av liknande exempel i framtiden, baserat på erfarenheterna från studien. Detta inkluderar behov som tillgänglighet för mindre erfarna studenter, applicerbarhet utanför själva kursen, tillämpning av etablerade standarder, utnyttjande av lättanvända verktyg och en arkitektur som tillåter testning.Några förbättringar föreslås även: studenterna skulle gynnas av att lära sig om mjukvarutestning i ett tidigt skede av sina studier. Innehållet i lärmodulerna bör även presenteras för studenterna tidigare i kursen för att kunna appliceras i deras projekt.Ytterligare forskning rekommenderas även för att utvärdera andra lämpliga molnbaserade miljöer, samt för att utvärdera tillämpbarheten av lärmodulerna hos studenter med inlärningssvårigheter.
|
5 |
Probing-based testing for SCADA systems : A novel method for hardware-in-the-loop integration testing of SCADA systems / Probbaserad testning av SCADAsystem : En ny metodik för integrationstestning av SCADAsystem på verklig hårdvaraHeddini, August January 2024 (has links)
Integration testing in software refers to a type of tests where system components are tested as a group for the purpose of verifying their interfaces. It is an important phase in system testing which aims at verifying the compliance of the system with specified functional requirements and the elimination of errors in the interaction of system components. Often integration testing is performed on complex systems with additional requirements for the testing approaches wherein the hardware limitations and time delays need to be taken into account. The testing of such systems is commonly performed through hardware-in-the-loop (HIL) tests. Despite the advances in both integration testing and HIL testing, combining the two for complex systems is still a challenging issue requiring a new set of potential solutions. In this thesis work we propose a new solution approach for HIL integration testing of Supervisory Control and Data Acquisition (SCADA) systems which does not require any simulation of the system under test. The solution presented in this thesis is based on the utilization of probes which are deployed to select component interfaces and through which real-time, inter-component communication can be observed without interference. The feasibility of the proposed approach is evaluated by applying it to a proof-of-concept test of the SCADA control system for a wave-energy converter in development by the thesis host company CorPower Ocean. In the results chapter we further discuss the architectural solution of the probing-based approach and provide further implementation details. Our conclusion is that the proposed approach corresponds to a promising, light-weight, and modular testing solution that can be used to perform live software integration tests of a fully connected system with little to no interference on its operation. / Inom mjukvarubranschen är integrationstester en typ av testning där grupper av systemkomponenter testas tillsammans för att säkerställa funktionaliteten av deras gränssnitt. Det är en viktig fas inom systemtestning som försäkrar att systemet som helhet uppfyller designkraven samt som minimerar felrisken i interaktioner mellan delkomponenter. Integrationstester utförs ofta på komplexa system där testningen i sig har ytterligare krav som inskränker metodvalet, till exempel då hänsyn behöver tas till hårdvarubegränsningar eller timing. Ofta genomförs testningen av sådana system med så kallade hardware-in-the-loop-tester (HIL). Trots modern utveckling inom både integrations- och HIL-testning är det fortfarande mycket utmanande att kombinera båda metoderna för komplexa system och nya lösningar behöver utvecklas och utvärderas. I denna avhandling föreslås en ny sådan lösning för HIL-testning av Supervisory Control and Data Acquisition (SCADA) -kontrollsystem som inte kräver att någon del av systemet simuleras under testernas utförande. Lösningen är baseras på användandet av mjukvarusonder som sätts in vid utvalda komponentgränssnitt och som i realtid kan observera interkomponentkommunikation utan störningspåverkan på komponenterna i sig. Den beskrivna lösningen utvärderades genom att utföra en praktisk konceptvalidering mot SCADAkontrollsystemet för avhandlingens värdbolag CorPower Oceans vågenergigenerator. I avhandlingen beskrivs även den arkitekturella lösning som krävdes för att genomföra sonderingsbaserad testning på ett reellt system samt implementationsdetaljer för konceptvalideringen. Slutsatsen är att den föreslagna lösningen beskriver en lovande och modulär testningsmetodik som kan användas för att genomföra mjukvaruintegrationstester av komplexa, sammankopplade system i realtid, utan simuleringar och utan betydande störningspåverkan på systemets operation
|
Page generated in 0.1523 seconds