基于资源扩展活动图的并发测试用例生成方法
2019-04-13朱晓程闫雪丽
航天控制 2019年1期
朱晓程 薛 静 杨 彬 闫雪丽
北京航天自动控制研究所,北京100854
并发软件设计的运用已越来越普遍,它能够提高程序执行效率与系统资源的利用率,但与此同时,由于并发软件执行时行为的不确定性,造成软件问题更加复杂且难以解决。并发软件的发展对软件测试技术提出了更高的要求,目前,并发软件测试主要存在以下问题:
1)程序执行的不确定性,与顺序执行的程序相比,可测试性低,并发问题难以定位与测试;
2)随机输入程序执行过程的并发事件序列的不确定性测试[1](Non-deterministic Testing),难以保证测试的充分性,测试效果不理想;
3)控制程序执行过程并发事件序列的确定性测试[1](Deterministic Testing),不同的同步序列生成方法选择,可能会使得并发测试用例数量爆炸,影响测试效率。
模型驱动测试方法可实现测试前移,满足软件测试验证与软件设计开发的并行研制需求,改变软件测试滞后于软件开发的基本状况。因此,基于模型的测试用例生成方法也越来越迎合该行业技术发展的要求。活动图是UML[2](统一建模语言)中一种重要的、用于描述系统工作流程的模型图,它描述系统活动的顺序及控制流,并且能够表述同时发生的活动。这使得活动图适用于建立工作流模型、分析用例以及分析多线程应用程序。
数据竞争是并发软件最常见的故障,且多数并发故障的本质是由于共享资源的不合理保护,产生数据竞争问题而造成的,因此,针对并发软件特性提出对活动图进行资源属性的扩展,提出了基于资源扩展活动图的并发测试用例生成方法,通过该方法提高并发测试用例的生成质量与效率。……
登录APP查看全文
