1 |
Development of Test Equipment Based On Boundary Scan to Analyze Camera Systems for the Car IndustryJonsson, Simon, Jansson, Linus January 2016 (has links)
Testing a PCB assembly can be very time consuming due to its complexity andcompactness. Tests are desired to be consistent and test coverage should be as highas possible, which is perfect for automated testing software.This thesis intends to develop computer controlled tests of faulty PCB assembliesusing boundary scan, which is meant to quickly locate the error so that an analysisengineer can evaluate it and prevent it from happening in future versions of theproduct. Boundary scan is even able to test the inner circuitry.Testing with boundary scan has been around for quite some time, but in recentyears it has shown to be truly valuable and time saving, due to the increasingcomplexity of PCB assemblies. The conclusions reached in this study are promisingfor future tests and development of PCBs using boundary scan, which has shownto be quite the powerful tool.
|
2 |
An Effective Verification Strategy for Testing Distributed Automotive Embedded Software Functions: A Case StudyChunduri, Annapurna January 2016 (has links)
Context. The share and importance of software within automotive vehicles is growing steadily. Most functionalities in modern vehicles, especially safety related functions like advanced emergency braking, are controlled by software. A complex and common phenomenon in today’s automotive vehicles is the distribution of such software functions across several Electronic Control Units (ECUs) and consequently across several ECU system software modules. As a result, integration testing of these distributed software functions has been found to be a challenge. The automotive industry neither has infinite resources, nor has the time to carry out exhaustive testing of these functions. On the other hand, the traditional approach of implementing an ad-hoc selection of test scenarios based on the tester’s experience, can lead to test gaps and test redundancies. Hence, there is a pressing need within the automotive industry for a feasible and effective verification strategy for testing distributed software functions. Objectives. Firstly, to identify the current approach used to test the distributed automotive embedded software functions in literature and in a case company. Secondly, propose and validate a feasible and effective verification strategy for testing the distributed software functions that would help improve test coverage while reducing test redundan- cies and test gaps. Methods. To accomplish the objectives, a case study was conducted at Scania CV AB, Södertälje, Sweden. One of the data collection methods was through conducting interviews of different employees involved in the software testing activities. Based on the research objectives, an interview questionnaire with open-ended and close-ended questions has been used. Apart from interviews, data from relevant ar- tifacts in databases and archived documents has been used to achieve data triangulation. Moreover, to further strengthen the validity of the results obtained, adequate literature support has been presented throughout. Towards the end, a verification strategy has been proposed and validated using existing historical data at Scania. Conclusions. The proposed verification strategy to test distributed automotive embedded software functions has given promising results by providing means to identify test gaps and test redundancies. It helps establish an effective and feasible approach to capture function test coverage information that helps enhance the effectiveness of integration testing of the distributed software functions.
|
3 |
Real-time auto-test monitoring systemBlixt, Fanny January 2021 (has links)
At Marginalen Bank, there are several microservices containing endpoints that are covered bytest automation. The documentation of which microservices and endpoints that are covered byautomated tests is currently done manually and is proven to contain mistakes. In the documentation, the test coverage for all microservices together and for every individual microserviceis presented. Marginalen Bank needs a way to automate this process with a system that cantake care of test coverage documentation and present the calculated data. Therefore, the purpose of this research is to find a way to create a real-time auto-test monitoring system thatautomatically detects and monitors microservices, endpoints, and test automation to documentand present test automation coverage on a website. The system is required to daily detect andupdate the documentation to be accurate and regularly find eventual changes. The implemented system that detects and documents the test automation coverage is calledTest Autobahn. For the system to detect all microservices, a custom hosted service was implemented that registers microservices. All microservices with the custom hosted service installedand extended to registers to Test Autobahn when deployed on a server. For the system todetect all endpoints of each microservice, a custom middleware was implemented that exposesall endpoints of a microservice with it installed. For the microservices to be able to install theseand get registered, a NuGet package containing the custom hosted service and the custom middleware, was created. To detect test automations, custom attributes models were created thatare supposed to be inserted into each test automation project. The custom attributes are placedin every test class and method within a project, to mark which microservice and endpoint thatis being tested within every automated test. The attributes of a project can be read throughthe assembly. To read the custom attributes within every test automation project, a consoleapplication, called Test Autobahn Automation Detector (TAAD), was implemented. TAADreads the assembly to detect the test automations and sends them to Test Autobahn. Test Autobahn couples the found test automation to the corresponding microservices and endpoints.TAAD is installed and ran on the build pipeline in Azure DevOps for each test automationproject to register the test automations. To daily detect and update the documentation of the test coverage, Quartz.NET hosted serviceis used. With Quartz.NET implemented, Test Autobahn can execute a specified job on a schedule. Within the job, Test Autobahn detects microservices and endpoints and calculates the testautomation coverage for the detection. The calculation of the test coverage from the latestdetection is presented on the webpage, containing both the test coverage for all microservicestogether and the test coverage for each microservice. According to the evaluations, the systemseems to function as anticipated, and the documentation is displaying the expected data.
|
4 |
Automatic test vector generation and coverage analysis in model-based software developmentAndersson, Jonny January 2005 (has links)
<p>Thorough testing of software is necessary to assure the quality of a product before it is released. The testing process requires substantial resources in software development. Model-based software development provides new possibilities to automate parts of the testing process. By automating tests, valuable time can be saved. This thesis focuses on different ways to utilize models for automatic generation of test vectors and how test coverage analysis can be used to assure the quality of a test suite or to find "dead code" in a model. Different test-automation techniques have been investigated and applied to a model of an adaptive cruise control system (ACC) used at Scania. Source code has been generated automatically from the model, model coverage and code coverage has therefore been compared. The work with this thesis resulted in a new method to create test vectors for models based on a combinatorial test technique.</p>
|
5 |
Consistency techniques for test data generationTran Sy, Nguyen 10 June 2005 (has links)
This thesis presents a new approach for automated test data generation of imperative programs containing integer, boolean and/or float variables. A test program (with procedure calls) is represented by an Interprocedural Control Flow Graph (ICFG). The classical testing criteria (statement, branch, and path coverage), widely used in unit testing, are extended to the ICFG. Path coverage is the core of our approach. Given a specified path of the ICFG, a path constraint is derived and solved to obtain a test case. The constraint solving is carried out based on a consistency notion. For statement (and branch) coverage, paths reaching a specified node or branch are dynamically constructed. The search for suitable paths is guided by the interprocedural control dependences of the program. The search is also pruned by our consistency filter. Finally, test data are generated by the application of the proposed path coverage algorithm. A prototype system implements our approach for C programs. Experimental results, including complex numerical programs, demonstrate the feasibility of the method and the efficiency of the system, as well as its versatility and flexibility to different classes of problems (integer and/or float variables; arrays, procedures, path coverage, statement coverage).
|
6 |
Consistency techniques for test data generationTran Sy, Nguyen 10 June 2005 (has links)
This thesis presents a new approach for automated test data generation of imperative programs containing integer, boolean and/or float variables. A test program (with procedure calls) is represented by an Interprocedural Control Flow Graph (ICFG). The classical testing criteria (statement, branch, and path coverage), widely used in unit testing, are extended to the ICFG. Path coverage is the core of our approach. Given a specified path of the ICFG, a path constraint is derived and solved to obtain a test case. The constraint solving is carried out based on a consistency notion. For statement (and branch) coverage, paths reaching a specified node or branch are dynamically constructed. The search for suitable paths is guided by the interprocedural control dependences of the program. The search is also pruned by our consistency filter. Finally, test data are generated by the application of the proposed path coverage algorithm. A prototype system implements our approach for C programs. Experimental results, including complex numerical programs, demonstrate the feasibility of the method and the efficiency of the system, as well as its versatility and flexibility to different classes of problems (integer and/or float variables; arrays, procedures, path coverage, statement coverage).
|
7 |
Automatic test vector generation and coverage analysis in model-based software developmentAndersson, Jonny January 2005 (has links)
Thorough testing of software is necessary to assure the quality of a product before it is released. The testing process requires substantial resources in software development. Model-based software development provides new possibilities to automate parts of the testing process. By automating tests, valuable time can be saved. This thesis focuses on different ways to utilize models for automatic generation of test vectors and how test coverage analysis can be used to assure the quality of a test suite or to find "dead code" in a model. Different test-automation techniques have been investigated and applied to a model of an adaptive cruise control system (ACC) used at Scania. Source code has been generated automatically from the model, model coverage and code coverage has therefore been compared. The work with this thesis resulted in a new method to create test vectors for models based on a combinatorial test technique.
|
8 |
Evaluating the effectiveness of test coverage criteria using mutation analysis : An evaluation of test coverage criteria in C#Johansson, Erik January 2016 (has links)
Test coverage criteria introduces metrics to measure the adequacy of a test suite as well as defined rules for performing software testing. This makes it possibly to formally define requirements for testing in various industries where software quality is essential, such as in aviation. This bachelor thesis aims to study the effectiveness of 11 different coverage criteria in two ways. Firstly how effective they are at finding faults and secondly their cost effectiveness. Test cases were created for each individual criteria for three different programs. The effectiveness of these test cases was then measured using mutation analysis. The results revealed that the scale of the experiment was too small to truly draw any conclusions regarding effectiveness. It was however shown that due to the “test noise” effect, the effectiveness of the test criteria can differ notably. It was also shown that test coverage criteria alone may not be sufficient in order to perform efficient testing.
|
9 |
Improvement of Software Quality by Test Coverage and Risk Oriented ApproachEssien, Happiness Udo 06 November 2023 (has links)
Software Quality is a key priority in any company involves with software development. Quality which can be describe as a distinguish feature of a software, has a high competitive advantage for most business organisations, especially during this turbulent time with the world battling pandemic. Software has grown and diversifies to ease our day to day life, therefore, the role of quality assurance activities has increase and become extremely important and complex. However, successful software which meets customer’s requirement and expectation depends on the quality of the software. In order to maintain the quality of their applications, several development industries have revised their quality procedure. DevOps and agile development have greatly improved the success rate of software projects with the introduction of test coverage measures.
The purpose of this thesis is to implement existing test coverage metrics which are used for improving and measuring the quality of software in order to help reduce excess time consumption, overshooting of budget and maintain scope within requirement. The software quality metrics selected for this study is the ISO 9000 and the core focus area to implement this quality metrics is on unit test, integration test and acceptance test. For this requirement, a design workflow using a flowchart to get a clear description of the work process will be created, configuration of DevOps environment for the pipelines which combines continuous integration and continuous development (CI/CD) to test and build our code constantly and consistently with SonarCloud. Finally, configuration of TestProject for creating automated test script and automated acceptance test execution with automatic generation of test report as well as evaluating the quality of the software product based on the test execution and coverage result. The documentation for this implementation will contain all the steps necessary to configure the test coverage metrics. The metrics will be used to create unit tests, integration tests, and acceptance tests for web applications that run on a variety of browsers and versions, including Chrome Version 103.0.1264.37, Edge Version 103.0.5060.114, and Firefox Version 103.0.
|
10 |
Feature Location using Unit Test Coverage in an Agile Development EnvironmentDeLozier, Gregory Steven 04 August 2014 (has links)
No description available.
|
Page generated in 0.1011 seconds