Font Size: a A A

A Self-adaptive Test Framework For Concurrent Programs

Posted on:2011-05-06Degree:MasterType:Thesis
Country:ChinaCandidate:M N WuFull Text:PDF
GTID:2178360302974633Subject:Computer application technology
Abstract/Summary:PDF Full Text Request
Since the widely applying of concurrent systems, how to debug and test of these kinds of programs is gathering more and more attention. Test of concurrent programs is much more difficulty than sequence programs' testing due to its complicated designation and non-deterministic. The non-deterministic testing can be easily operated and implemented, although its ineffectiveness. One synchronous sequence may be executed several times while the expected never meets yet. The deterministic testing forces the tested program to execute expected synchronous sequence based on certain test input, via some man-made intervene. It can verify whether it runs correctly in this sequence. Deterministic testing is effective since it can verify certain synchronous sequences deterministically; however, how to generate synchronous sequences and what deterministic executing technique being chosen is still an under-solved issue. Reachability testing absorbs both non-deterministic and deterministic testing's advantages. It generates synchronous sequences dynamically and tests all the possible sequences under certain test input X. Nevertheless, Reachability testing is time-consuming. For testing of some huge concurrent programs, it is hard to finish verification all possible synchronous sequences. In this paper, a new concurrent test framework which tests concurrent programs base on each concurrent test points is introduced. This framework can also adapt test data automatically. The fundamental reason of concurrent bug is resource sharing. A concurrent program whose threads or processes are absolutely independent can be described as several normal sequential programs without any potential concurrent bugs. In this framework, test data is initialized and adjusted after each test base on an algorithm, in order to intensify critical resource competition and re-occurrence of potential concurrent bugs. In stead of concurrent bugs base verification, this paper proposes a concurrent test points base verification theory since some different concurrent bugs may have the same error.
Keywords/Search Tags:non-deterministic test, deterministic test, reachablity test, concurrent test point, concurrent bug
PDF Full Text Request
Related items