Parallel software Testing Sequence Generation Method Based on State Pruning
文件大小: 351k
源码售价: 10 个金币 积分规则     积分充值
资源说明:### 基于状态剪枝的并行软件测试序列生成方法 #### 摘要与背景 在并行软件系统中进行测试是一项极具挑战性的任务,主要是因为并行行为会导致状态数量和执行序列显著增加。这使得传统的测试方法难以应对,并且可能会导致冗余测试序列的生成。因此,寻找一种能够有效生成全面覆盖所有测试行为的不同顺序发生情况的非冗余测试序列的方法至关重要。 #### 研究目标与方法 本研究提出了一种基于彩色Petri网(CPN)的测试序列生成方法,旨在实现对所有被测行为在不同顺序下的全面覆盖,并生成非冗余的测试序列。将测试目标定义为一系列被测行为段落,并定义了覆盖标准:即所有被测行为的不同顺序的发生都应该被覆盖。 为了提高效率,引入了投影操作来获取每个被测行为段落的状态空间子图。在这个子图中包含了该行为段落中的所有发生情况,这样可以在子图而非整个系统的状态空间中生成测试序列。虽然这种方法提高了效率,但由于复杂的并行行为(包括被测行为和其他行为),状态空间子图仍然可能非常庞大。 针对这一问题,提出了状态节点剪枝操作和弧线剪枝操作来进一步简化子图,大幅度减少其规模,并移除由其他行为引起的所有状态。经过简化后的子图仍然能覆盖所有被测行为的不同顺序发生情况,从而能够在简化后的子图中生成测试序列。 通过定义全路径操作来实现在简化后的子图中生成所有测试序列。通过收集每个简化子图的所有序列以及相邻子图之间的任何序列,可以生成覆盖所有被测行为的测试序列,且不包含任何冗余序列。 #### 关键技术与步骤 1. **定义测试目标**:将测试目标划分为一系列被测行为段落,并定义了覆盖标准,确保所有被测行为的不同顺序的发生都被覆盖。 2. **状态空间子图生成**:使用投影操作来获取每个被测行为段落的状态空间子图,其中包含了该行为段落中的所有发生情况。 3. **状态剪枝**:通过状态节点剪枝操作和弧线剪枝操作进一步简化状态空间子图,去除不必要的状态,减少子图的规模。 4. **测试序列生成**:通过定义全路径操作,在简化后的子图中生成所有测试序列,确保覆盖所有被测行为的不同顺序发生情况,并且不包含任何冗余序列。 #### 实验结果 实验结果显示,所提出的方法是有效和高效的。通过对状态空间子图的有效简化,不仅减少了测试序列生成的时间成本,而且保证了测试序列的全面性和非冗余性,这对于提高并行软件系统的测试效率具有重要意义。 #### 结论 本文提出了一种基于状态剪枝的并行软件测试序列生成方法,该方法能够有效生成覆盖所有被测行为的不同顺序发生情况的非冗余测试序列。通过采用投影操作、状态节点剪枝操作和弧线剪枝操作等关键技术,实现了对状态空间子图的有效简化,从而提高了测试序列生成的效率。实验结果验证了该方法的有效性和实用性,为并行软件系统的测试提供了一种新的解决方案。
本源码包内暂不包含可直接显示的源代码文件,请下载源码包。