Font Size: a A A

Study On Combinatorial Testing And Its Application In Testing Railway Signalling System Software

Posted on:2022-04-24Degree:DoctorType:Dissertation
Country:ChinaCandidate:C RaoFull Text:PDF
GTID:1482306737492844Subject:Traffic Information Engineering & Control
Abstract/Summary:PDF Full Text Request
Software testing is essential to preserve software quality and safety.As one of the important software testing techniques,combinatorial testing focuses on the interactions in software input domain and tests the software effectively and systematically under combinatorial coverage criteria.It aims to detect software failures caused by interactions.Combinatorial testing has been well-studied and applied to various of application domains.Railway signalling is a collection of automation and artificial intelligent techniques,which ensures safety and operation efficiency of railway system.With software been widely used over the past decades,railway signalling system has gradually become a safety-critical system of software intensive.The software typically requires to be highly safety-assured.Any failures would bring negative consequences,from slight traffic stuck to serious traffic accidents.It is necessary to apply software testing to enhance the software safety.As a safety assurance standard for railway signalling system,which is adopted by the community,EN50128 has also explicitly pointed out that software testing is an indispensable way to ensure software safety.However,the software of railway signalling system typically runs in an environment where there are a large amount of communicating objects,varieties of messages,interfaces and configurations.Such environment implies huge interactions in the software input domain,which brings difficulties to perform effective software testing.Furthermore,such interactions are one of the major factors that trigger software failures.Applying combinatorial testing to railway signalling system software contributes to improving both efficiency and safety.However,there are still research issues in terms of combinatorial test generation and optimization.Specifically,on one hand,the constrained combinatorial test generation still have space to be improved.On the other hand,there are a lack of specific studies on generating and optimizing multiple test sets.Such research issues would cause the combinatorial testing in real world to be low-effective and cost-explosion,which limits the furter application of combinatorial testing in railway signalling system.Towards such research issues,this dissertation studies the approaches of combinatorial test generation and optimization.It has achieved the expected results after being applied to test railway signalling system software.The major contributions of this dissertation are:(1)To solve the issue of low testing efficiency in constrained combinatorial testing,a covering array reconstruction approach is proposed in this dissertation.The approach takes an optimal covering array as input seed tests,and it reconstructs the covering array based on input parameter mapping strategy.It generates a tidy constrained test set via extending the seed tests after covering array reconstruction.Specifically,in the approach,a metric is proposed to evaluate the importance of input parameters.And a heuristic parameter mapping strategy in designed based on the metric.Experimental results show that when compared with existing popular approaches,the proposed approach could generate constrained test sets with smaller size in most cases,which improves the testing efficiency.(2)To solve the issue of execution cost explosion when combining combinatorial testing and model-based testing,a novel approach is proposed in this dissertation that minimize the multiple test sets.Specifically,a greedy-particle swarm hybrid optimization strategy is designed for the approach to remove redundancy from multiple test sets,aiming at minimizing the total execution cost while satisfying logic coverage criteria.Taking railway signalling system software as a case study,results show that the proposed approach could remove redundancy and thus reduce execution cost effectively,while still preserving combinatorial coverage and logic coverage.(3)To solve the issue of low testing efficiency and high testing cost in terms of combinatorial testing for multiple input models,a novel approach is proposed in this dissertation that performs effective test generation for multiple input models with shared parameters.A heuristic test generation framework with two-phase extension is desigened in the approach,which first extends the individual test sets asynchronously and then extends the multiple test sets synchronously.Experimental results show that when given multiple input models,the proposed approach is effective in generating multiple test sets with smaller size in most cases,which contributes to enhancing the testing efficiency and reducing the testing cost.As a result,it enriches the studies on combinatorial testing.(4)To solve the issue of applying combinatorial testing to railway signalling system software,this dissertation takes the software of ZPW-2000 track circuit receiver and CTCS-2onboard equipment as subjects of case study,where input models are created and test sets are generated and optimized using the proposed approaches.Results of case study show that it is effective and efficiency when implementing the combinatorial tests and applying them to real-world testing,which explores and contributes to applying combinatorial testing to railway signalling system software in both theory and reality.
Keywords/Search Tags:Railway signalling system, Safety-Critical software, Software testing, Combinatorial testing, Test generation and optimization
PDF Full Text Request
Related items