Font Size: a A A

Test Case Prioritization Techniques Based On Dependency Structure

Posted on:2016-05-12Degree:MasterType:Thesis
Country:ChinaCandidate:Y Q LiuFull Text:PDF
GTID:2308330467473249Subject:Computer technology
Abstract/Summary:PDF Full Text Request
With the implementation of the national informatization strategy, the software is becomingincreasingly important in all areas of information industry. With the growing size of software,system integration and data concentration raise higher demands on the reliability of the softwaresystem. The topic about how to develop a reliable, efficient, stable and powerful software system,has a lot of concerns to software developers and researchers. Software testing,which is a vitaltechnique for protecting the high quality of software, plays an important role in the life cycle ofsoftware. Improving the testing efficiency has an irreplaceable role in finding the softwaredefects and guaranteeing the quality of the software.This paper mainly studies the test case prioritization technology which can improve theperformance of the test suite without reducing the size of the test cases, such as the rate of codecoverage and defect detection. Many researchers at home and abroad have done a lot of researchabout the test case prioritization issues and have made some progress. But still existing twoissues are worthy of further study: how to prioritize for the testing cases with the dependencyrelationship and how to conduct quantitative analysis about this dependency relationship.This paper has a further study about the prioritization technology based on dependencystructure and mainly includes several following aspects:(1) The dependency relationship which is crucial to the software testability. Aim at thedefects of existing the research about indicators of software testability, this paper builds a groupof indicators measuring software testability. It can makes up for deficiencies that localdependence has a critical impact on the overall testability. This measurement criteria helps toachieve the test goals as soon as possible by early detection modifications and improves theefficiency of software testing.(2) The quantification of the dependency relationship. Through researching and analyzingthe dependency relationship between the test cases, we compose dependency structure graph. According to Floyd and Worshall closure algorithm, this paper defines and calculates twographic overlay indicators called the depth of dependency and the sum of dependency. Thedependency relationship between the test cases expresses software complexity. Testing the partswith higher software complexity in the early of software testing helps to find out more defects asearly as possible.(3) The test case prioritization technique existing the dependency relationship. Based onquantitative indicators of the dependency relationship which is crucial to the software testabilityand graphic overlay indicators of the dependencies between the test cases, this paper designs thetest prioritization sorting algorithm based on dependency structure between the test cases. Thissorting method constitutes dependency structure graph by regarding the test cases as vertices andconsidering the dependency relationship as paths. Then this paper defines quantitative indicatorsof the dependency relationship and uses the weighted depth-first search algorithm to sort thepriority of the test cases, which the weighting function is those already calculated quantitativeindicators.Finally, this paper makes a series of simulation experiments to verify the capability ofdefects detection and the test cost per unit of all faults detected that both of them affect the testcase prioritization, and compares the proposed prioritization technology with random sorting andprioritization techniques based on functional coverage. Experimental results show thatprioritization technology described in this paper can detect more defects in a short period of timeand spend less test cost, and finally indicate that the proposed prioritization algorithm has bettereffect.
Keywords/Search Tags:software testing, software testability, critical test dependency, dependencystructure, prioritization technology
PDF Full Text Request
Related items