论文部分内容阅读
在软件生命周期过程中,软件测试是保证软件质量的关键环节之一。随着分布式系统的不断发展,网络并发软件的测试方法受到了广泛关注与讨论。由于并发实体之间存在着复杂的交互行为,使得并发软件具有不确定性和不可重复性,这给测试工作带来了很大困难。针对该问题,本文提出了一种方法,可以较好地解决并发软件的测试问题。本文主要做了以下几方面工作: (1)开发了一个具有并发特性的软件,然后基于CPN对该软件进行了层次化建模。 (2)使用一种化简算法对模型进行了化简,该方法有效地缩减了模型的状态空间,有利于测试生成。通过对化简前后状态空间分析报告的对比,验证了该算法对模型中并发行为的化简具有很好的效果。 (3)提出了一种测试序列生成算法,该算法首先确定被测并发行为在状态空间中的初始结点和终端结点的位置,根据结点之间是否具有前驱和后继关系缩减结点数目,将初始结点和终端结点两两配对,生成了两个结点之间的测试序列。 (4)根据生成的测试序列,编写TTCN-3测试套,实现对该软件并发行为的测试。实验证明,该方法对软件并发行为的测试具有一定的有效性和一般通用性。