We use cookies to improve your experience with our site.

众包测试环境下的Web服务测试任务分配的优化

Optimization of Web Service Testing Task Assignment in Crowdtesting Environment

  • 摘要:
    研究背景 网络环境、网络设备、软件和硬件等因素都会影响web服务的执行,因此传统的服务测试工具不足以为web服务提供完备、多样的测试结果。而新兴的众包测试方法作为一种可以组织互联网上零散劳动力的工作方式,能够将web服务测试工作作为众测任务交由使用不同设备、位于不同位置的工人进行测试。在现有工作中,众包任务分配问题往往会被建模为一个优化问题,然后使用基于贪心算法或者精确式算法的分配策略求解方式进行分配策略的求解。而众包测试既对任务完成质量有要求,同时也要考虑任务和工人的动态性,因此,现有方法都无法在同时权衡分配质量和求解速度的情况下获得优秀的分配策略,而分配质量和求解速度又是两个相互矛盾的优化目标,因此,我们需要一个折中的求解方法来兼顾二者进行web服务众测任务的分配。
    目的 对于众测环境中的web服务测试任务分配问题,我们的研究目标是提出一个兼顾分配策略有效性、时效性的分配策略优化方法。我们希望得到的任务分配策略能够最大限度地提高测试质量和最小化测试成本,并受测试人员的能力、报酬、位置等因素的约束。同时,我们希望使用基于启发式算法的方法,来解决分配策略优化的及时性和准确性的平衡问题。
    方法 我们将众测环境中的web服务测试任务分配建模为一个优化问题,并在考虑测试人员的能力、薪酬成本和网络环境等影响因素的情况下进行求解分配策略的优化问题。考虑到测试工人的动态性,我们使用启发式优化算法进行优化求解。差分算法作为一种适合调度分配问题的优化算法,将其应用在众包测试任务分配环境,以在分配策略的优化过程中寻找求解的及时性和准确性之间的权衡。
    结果 我们在真实数据集WS-DREAM和仿真数据集上进行了大量实验。同时与基于精确式算法、贪心算法和其他启发式算法的方法进行实验对比。对比结果表明,我们提出的方法WTTA-C的分配质量仅比基于精确式算法的方法C-DEX差9.77%,但WTTA-C的运行速度比C-DEX快38%,且其结果优于其他基于启发式算法的方法。同时,我们动态改变测试工人的网络环境和位置进行实验,验证了WTTA-C算法对动态众包测试环境的适应性。
    结论 我们主要研究了众包测试环境中的web服务测试任务分配问题,目的是将测试任务分配给不同网络环境中的合适的测试人员,为web服务提供更加丰富、高质量的测试结果。我们设计了一种基于差分算法的web服务测试任务分配算法,命名为WTTA-C算法。通过与其他类型的优化算法的实验比较,我们发现WTTA-C算法能够在可接受的求解时间内实现接近最优的性能。此外,WTTA-C还减少了web服务的测试时间。由于众包环境的时效性要求,我们相信提出的方法更具有现实应用价值。同时,在将来,我们希望对在线的实时web服务众测任务分配方法进行更多地研究,致力于更能贴近现实应用的分配算法。

     

    Abstract: Crowdtesting has emerged as an attractive and economical testing paradigm that features testers from different countries, with various backgrounds and working conditions. Recent developments in crowdsourcing testing suggest that it is feasible to manage test populations and processes, but they are often outside the scope of standard testing theory. This paper explores how to allocate service-testing tasks to proper testers in an ever-changing crowdsourcing environment. We formalize it as an optimization problem with the objective to ensure the testing quality of the crowds, while considering influencing factors such as knowledge capability, the rewards, the network connections, and the geography and the skills required. To solve the proposed problem, we design a task assignment algorithm based on the Differential Evolution (DE) algorithm. Extensive experiments are conducted to evaluate the efficiency and effectiveness of the proposed algorithm in real and synthetic data, and the results show better performance compared with other heuristic-based algorithms.

     

/

返回文章
返回