论文摘要
当今,各行各业都在使用不同样式的软件,这些软件的种类、规模以及复杂度都在一定的程度上不断地增大,这直接导致了软件发生错误的概率增大,软件出现的错误可能引发巨大的损失,有时甚至还会对人类的生命安全构成威胁,所以,能保证软件质量和可靠性的软件测试便引起了人们的重视。测试在软件开发中占据了非常重要的位置,怎样在保证软件质量的情况下有效地缩短测试所需周期,降低测试成本是测试行业研究的热点。随着计算机科学技术的发展,软件测试也随之发展了起来,从最初的检查程序到组建测试团队,从手工测试到自动、手工结合,如今,软件测试已经演变为一系列具体的执行过程,此行业的发展也逐渐规范统一了,如何从已设计的原始测试用例集中选择规模较小的测试用例,使得测试费用降低到最少,是测试行业的主要目标。要想从原始测试用例集中挑选出100%覆盖的代价最小的测试用例子集,就必须使重复测试所付出的代价最小,这显然是一个NP问题,这种问题用传统算法很难解决,于是本文提出用智能优化算法来解决这个组合优化问题,这种算法是对蚁群算法(Ant Colony Algorithm)进行了规范和抽象后,提出统一的路径转移机制,结合合适的参数组合来保证蚂蚁搜索的动态随机性,将改进的算法应用到测试用例约简问题上,在避免早熟停滞现象发生的同时获得全局最优解。此算法可以保证在可接受的时间范围内找到最优解或近似最优解,无论是理论研究还是实际应用都具有重要的价值。最终,本文对改进的蚁群算法参数的取值进行了仿真设计,并将其运用到求解测试用例约简的问题中,设计测试用例自动挑选系统,此系统能根据不同的算法从输入两个表(用例、需求关系表和代价表)中自动的挑选出约简后的测试用例子集并计算出各子集的代价,用此方法求得的测试用例子集的代价与经典的几种算法进行了比较,得出本文提出的算法可行有效且能求得比其他算法更优的解,同时也保证了测试覆盖度,有效地节约了人力资源,从本质上降低了软件测试的成本。