231 |
Suitability of the Requirements Abstraction Model (RAM) Requirements for High Level System Testing / Lämpligheten av kravabstraktionen modellerar (RAM), krav för att testa för hög nivåsystemMuhammad, Naeem January 2007 (has links)
In market-driven requirements engineering requirements are elicited from various internal and external sources. These sources may include engineers, marketing teams, customers etc. This results in a collection of requirements at multiple levels of abstractions. The Requirements Abstraction Model (RAM) is a Market Driven Requirements Engineering (MDRE) model that helps in managing requirements by organizing them at four levels (product, feature, function and component) of abstraction. The model is adaptable and can be tailored to meet the needs of the various organizations e.g. number of abstraction levels can be changed according to the needs of the organization. Software requirements are an important source of information when developing high-level tests (acceptance and system level tests). In order to place a requirement on a suitable level, workup activities (producing abstraction or breaking down a requirement) can be performed on the requirement. Such activities on the requirements can affect the test cases designed from them. Organizations willing to adopt the RAM need to know the suitability of the RAM requirements for designing high-level tests. This master thesis analyzes the requirements at product, feature, function and component level to evaluate their suitability for supporting the creation of high-level system test. This analysis includes designing test cases from requirements at different levels and evaluating how much of the information needed in the test cases is available in the RAM requirements. Test cases are graded on a 5 to 1 scale according to the level of detail they contain, 5 for better detailed and 1 for very incomplete. Twenty requirements have been selected for this document analysis; twenty requirements contain five requirements from each level (product, feature, function and component). Organizations can utilize the results of this study, while making decision to adopt the RAM model. Decomposition of the tests developed from the requirements is another area that has been explored in this study. Test decomposition involves dividing tests into sub-tests. Some benefits of the test decomposition include better resource utilization, meet time-to-market and better test prioritization. This study explores how tests designed from the RAM requirements support test decomposition, and help in utilizing above listed benefits of the test decomposition.
|
232 |
Software defect prediction using machine learning on test and source code metricsLiljeson, Mattias, Mohlin, Alexander January 2014 (has links)
Context. Software testing is the process of finding faults in software while executing it. The results of the testing are used to find and correct faults. Software defect prediction estimates where faults are likely to occur in source code. The results from the defect prediction can be used to opti- mize testing and ultimately improve software quality. Machine learning, that concerns computer programs learning from data, is used to build pre- diction models which then can be used to classify data. Objectives. In this study we, in collaboration with Ericsson, investigated whether software metrics from source code files combined with metrics from their respective tests predicts faults with better prediction perfor- mance compared to using only metrics from the source code files. Methods. A literature review was conducted to identify inputs for an ex- periment. The experiment was applied on one repository from Ericsson to identify the best performing set of metrics. Results. The prediction performance results of three metric sets are pre- sented and compared with each other. Wilcoxon’s signed rank tests are performed on four different performance measures for each metric set and each machine learning algorithm to demonstrate significant differences of the results. Conclusions. We conclude that metrics from tests can be used to predict faults. However, the combination of source code metrics and test metrics do not outperform using only source code metrics. Moreover, we conclude that models built with metrics from the test metric set with minimal infor- mation of the source code can in fact predict faults in the source code.
|
233 |
Software Testing Process in Agile Development / Programvarutestning processen i Agile UTVECKLINGMalik, Ahsan Nawaz & Kashif Masood January 2008 (has links)
Software testing is the most important process to verify the quality of a product. Software testing in Agile development is very complex and controversial issue in literature and industry. Different people have different views about software testing in Agile methods, because most of Agile methods do not focus much on software testing activities. Agile strongly focus on the close customer collaboration, short iterations and frequent deliveries. But when it comes to software testing, then it is challenging, as Agile do not include many destructive testing practices, which are normally required for a quality product. This thesis covers the area of software testing process in Agile development. Agile development processes could be more beneficial and refined by adding testing practices and for this purpose; we proposed a concept of an independent integrated software testing team. This research also identifies the practices of Agile development in industry and the critical issues in industry while practicing Agile development. The issues of automated and manual testing, good practices in automation, and how to manage independent testing teams in Agile development are also high lightened. This report highlights every aspect of software testing process in Agile development. This research is based on literature reviews and an industrial survey.
|
234 |
Effects of Mutation Testing on Safety Critical SoftwareJohnsson, Rebecca, Svensson, Nathalie January 2017 (has links)
For avionic systems, the safety requirements are stricter than for non-safety critical systems due to the severe consequences a failure could cause. Depending on the consequences of a failure, the software needs to fulfill different testing criterias. More critical software needs more extensive testing. The question is whether the extra testing activities performed for software of higher criticality level results in discovery of more faults. Mutation testing has been used in this thesis as a method to evaluate the quality of test suites of avionic applications from different safety critical levels. The results showed that the extra activities performed at the higher levels do not necessarily result in finding more faults.
|
235 |
Evaluation of a Testing Process to Plan and Implement an Improved Test System : A Case Study, Evaluation and Implementation in Lab-VIEW/TestStand / Utvärdering av en testprocess för att planera och implementeraett förbättrat testsystem : En fallstudie, evaluering och implementation i Lab-VIEW/TestStandWennberg, Per, Danielson, Viktor January 2016 (has links)
In order to ensure the quality of a product, the provider of the product must performcomplete testing of the product. This fact increases the demands on the test systems usedto conduct the testing, the system needs to be reliable.When developing new software for a company, sometimes a requirements specificationcreated at the beginning of the project is not enough. Details of the desired implementationmay get lost when working with a general requirements specification.This thesis presents a case study of how a certain company work with their test systems.The aim of the case study was to find where the largest points of improvements could bemade in a new test system, which was to be implemented during this thesis work. Theimplementation of this new system was done in LabVIEW in conjunction with TestStandand this process is covered in this thesis.The performed case study revealed that the employees at the company found robustnessand usability to be the key factors in a new test system. During and after the implementationof the new system, it was evaluated regarding these two metrics, this process isalso covered in this thesis.
|
236 |
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.
|
237 |
Efficient transformation from general flow into a specific test case in an automated testing environment / Effektiv övergång från generellt flöde till specifikt test case i en automatiserad testningsmiljöOskarsson, Andreas January 2003 (has links)
SIMON is an automated testing application developed by WM-Data Consulting in Växjö, Sweden. Previously the test cases, called BIFs, run by SIMON to test the applications under test has been written manually in a very time consuming manner offering no protection against errors in the structure or misspellings. This thesis investigates a replacement to the manual method when creating the BIFs; my own developed application called the BIF-Editor. The usage of the BIF-Editor guaranteed correct syntax and structure and made the creation of the BIFs faster, but did it increase the quality of the BIFs? So to evaluate the BIF-Editor, the quality regarding path coverage of BIFs manually created was compared with BIFs created during the same elapsed time using the BIF-Editor. This evaluation showed that the usage of the BIF-Editor increased the quality of the BIFs by making the creation safer, but primarily faster which enabled the user to produce more BIFs than previously possible resulting in a raised path cover.
|
238 |
Integrating Exploratory Testing In Software Testing Life Cycle, A Controlled Experiment / Integrating Exploratory Testing In Software Testing Life Cycle, A Controlled Experimentahmed, Tanveer, Raju, Madhu Sudhana January 2012 (has links)
Context. Software testing is one of the crucial phases in software development life cycle (SDLC). Among the different manual testing methods in software testing, Exploratory testing (ET) uses no predefined test cases to detect defects. Objectives. The main objective of this study is to test the effectiveness of ET in detecting defects at different software test levels. The objective is achieved by formulating hypotheses, which are later tested for acceptance or rejection. Methods. Methods used in this thesis are literature review and experiment. Literature review is conducted to get in-depth knowledge on the topic of ET and to collect data relevant to ET. Experiment was performed to test hypotheses specific to the three different testing levels : unit , integration and system. Results. The experimental results showed that using ET did not find all the seeded defects at the three levels of unit, integration and system testing. The results were analyzed using statistical tests and interpreted with the help of bar graphs. Conclusions. We conclude that more research is required in generalizing the benefits of ET at different test levels. Particularly, a qualitative study to highlight factors responsible for the success and failure of ET is desirable. Also we encourage a replication of this experiment with subjects having a sound technical and domain knowledge. / H.no.2-7-644, Mukrumpura, Karimnagar, Pincode:500001, India, Phone number: +91-9908644775
|
239 |
Systematic Review on Testing Aspect-orientedPrograms : Challenges, Techniques and Their Effectiveness / Systematisk granskning om Testing Aspect-orientedPrograms : utmaningar, metoder och deras effektivitetShabbir, Kashif, Amar, Muhammad January 2008 (has links)
Aspect-oriented programming is a relatively new programming paradigm and it builds on the basis of object oriented programming paradigm. It deals with those concerns that cross-cut the modularity of traditional programming mechanisms and it aims at reduction of code and to provide higher cohesion. As with any new technology aspect oriented programming provides some benefits and also there are some costs associated with it. In this thesis we have done a systematic review on aspect oriented software testing in the context of testing challenges. Detailed analysis have been made to show that how effective are the structural test techniques to handle these challenges. We have given the analysis of Aspect-oriented test techniques effectiveness, based on research literature. / Aspekt-orienterad programmering är ett relativt nytt programmering paradigm och det bygger på grundval av objektorienterad programmering paradigm. Det handlar om de farhågor som KORSSKUREN den modularitet av traditionell programmering mekanismer och det syftar till minskning av kod och för att ge högre sammanhållning. Som med all ny teknik aspekt-orienterad programmering ger vissa fördelar och det finns vissa kostnader associerade med den. I denna avhandling har vi gjort en systematisk översyn av aspekt orienterad mjukvara testning i samband med provning utmaningar. Detaljerad analys har gjorts för att visa att hur effektiva är de strukturella provmetoder för hantera dessa utmaningar. Vi har gett en analys av Aspect-oriented testa tekniker effektivitet, baserade på forskningslitteratur. / FOLKPARKSVAGEN 18 Room 03 Ronneby 37240 Sweden Mobile Number Kashif 073-9124604, Amar 073-6574048
|
240 |
Mutation Testing : A comparison of mutation selection methodsHagman, Hans January 2012 (has links)
Software is all around us in our lives in the industrialized world, and we as a society and individuals need it to function correctly. Software testing fills the role of performing behavior audits, to guide the correction of the software to its intended behavior. The consequences of faulty software can range to the late arrival of trains, to nuclear meltdowns. This places quality requirements on the software of various levels. Program based mutation testing provides a high level of faultfinding capability. It does this by injecting many synthetic faults into the code under test, as described by mutation operators. These faults are used to search for testcases that would identify such faults, and consequently find real faults that the synthetic faults mimic. However, mutation testing is costly on three accounts; each mutant of the original code is compiled, each mutant should ideally have an associated testcase to reveal that fault the mutant contains, finally the testcases are analyzed thoroughly by looking the output of the original and mutants to reveal the error in behavior. In order to reduce cost while maintaining a high level of faultfinding, selective mutation testing is investigated, it uses a subset of all the available mutation operators. The investigation found that using Absolute value-, and Relational operator-, mutation reduces cost of mutation testing by 80%, while uncovering 83% of the injected faults.
|
Page generated in 0.0882 seconds