基于众包的Web应用测试

基于众包的Web应用测试

问题背景:


    随着互联互技术的进步,以互联网为中心的生活方式越来越受欢迎,已经带来了前所未有的新商机。因此基于Web的应用程序正变得越来越重要。因为他们是在全球范围内以经济成本为大量中段用户提供服务的最流行的方式。考虑到基于Web 的应用程序也变的越来越丰富,因为必须确保他们在各种情况下可靠的正确的工作。

    很多因素都可能影响Web应用的性能和用户体验,这使得他很难进行测试。通常,测试Web应用程序是给Internet上的人使用的,因为这些人有不同的背景和技术技能,不同的应用程序使用路径和网络连接,不同类型的浏览器和网络设备,甚至还有各种各样的安全威胁。因此测试计划和测试设计需要大连的测试用例以便能够全面的测试Web应用程序。

    而传统的测试手段需要大量的专业测试人员来进行人力密集型测试,这样测试效率低,并且需要大量的测试资金。得益于技术的进步,众包模式正成为一个吸引人的解决方案,因为他有能力吸引到来自世界各地的测试人员。众包测试在理论上与传统的测试方法不同,因为测试是由不同位置的测试人员进行的,而不是雇佣的顾问和专业人员。软件源代码是在不同的现实平台下进行测试的,这使得它更可靠、更经济、更快速、更无bug。


我们的工作:


众包测试框架图如下图所示,一共分为3部分,需求者,中间模块和众包测试人员;具体完成一次完整的众包测试任务如下步骤:

  1. 需求者,把众包任务的详细信息录入众包系统中(也就是中间模块中);

  2. 众包测试人员到众包系统有领取众包任务(2种领取模式,PUSH and PULL);

  3. 众包系统(中间模块)获取众包测试人员的测试结果,经过自动化处理反馈给需求者。

目前实验室关于众包测试的研究主要集中在两个领域:


1.众包任务的合理发布/匹配:

背景介绍:

众包测试任务往往是测试用例组成,测试任务之间是有一些内在联系的,并且不同的测试任务的测试难度也不同,怎么样合理的调度测试任务给合适的测试人员是一个很值得研究的课题。我们实验室实现了一个具有自主知识产权的众包平台XTurk。

我们的工作:

  1. 众包测试任务的发布时间

众包工人遍布世界各地,每个众包工人的能力和可信度都不尽相同。合理的设计众包任务的发布时间,尽可能的让高能力和高可信度的众包工人完成众包任务是一个有趣的课题。

我们把众包任务发布问题规约成二次规划问题,并且使用了3种不同的约束求解器(CPLEX,CHOCO,GRIBI)来解决。虽然约束求解器可以求解令人满意的解,但是随着问题规模的变大,求解器花费的时间越来越长。因此我们提出了4种启发式策略来求解二次规划问题,并且获得了比较满意的结果。

  2.众包测试任务的匹配

下图展示了我们的框架土。我们把Web应用程序抽象成程序谱,每个测试任务(测试用例)都是程序谱中对应的一条路径,每个节点对应的Web应用程序的每个页面。我们量化每个页面的难易程度来,来动态的调度合适的众包测试人员去测试合适的测试任务。直到每个页面都达到测试要求。我们把这个任务匹配的问题规约成整数规划(ILP)问题,我们使用了CPLEX约束求解器来解决这个问题,但是由于此问题是NP-C问题,随着问题规模的变大CPLEX求解时间越来越长,以致难以接受。因此我们又出了一个启发式策略,可以在合理的时间内达到一个令我们能接受的结果。



2.众包任务结果的自动化处理

背景介绍:

众包测试结果,多是由自然语言组成的。由于众包测试人员是来自世界各地,并且对BUG的理解和语言的表达都千差万别。因此会产生很多的噪音或者无效的BUG。如果把众包测试结果直接反馈给需求者,需求者还需要花费大量时间来解读BUG报告,这样费时费力,并不是众包测试的初衷。为了解决这个问题,目前有很多文献通过数据挖掘手段来成千上万的bug报告中识别具有高影响力的BUG。

我们的工作:

我们通过对数据的分析发现下面2个突破点:

1.往往高影响力的BUG事占有少数的在全部的bug报告中,

2.BUG报告中噪音很多;

基于上面的这2个点,我们提出了一个完整的解决模型来识别高影响力BUG,如下图所示:



我们的模型一共分为3部分:

  1. 去噪,我们提出了FS-IS去噪模型

  2. 处理不平衡问题,我们提出了RSMOTE方法,来解决数据不平衡问题;(下图展示了我们的RSMOTE方法对真实数据集的不平衡问题的处理能力,很明显发现我们的RSMOTE算法对不平衡数据的泛化能力更好)

  3. 提高泛化能力,我们使用Chouqet Fuzzy Integral方法来提高算法的泛化能力。


工作成果


[1]. ShikaiGuo, Rong Chen, Hui Li, Jian Gao, Yaqing Liu, “Crowdsourced WebApplication Testing under Real-Time Constraints,” International Journal ofSoftware Engineering and Knowledge Engineering, vol. 28(06), pp. 751-779, 2018.(SCI, CCF C类)

[2]. ShikaiGuo, Rong Chen, Hui Li, Tianlun Zhang, Yaqing Liu, “Identify SeverityBug Report with Distribution Imbalance by CR-SMOTE and ELM,” InternationalJournal of Software Engineering and Knowledge Engineering. (Accepted , SCI,CCF C类)

[3]. ShikaiGuo, Rong Chen, Hui Li, “Using Knowledge Transfer and Rough Set toPredict the Severity of Android Test Reports via Text Mining,” Symmetry,vol.9(8):161, 2017. (SCI)

[4]. ShikaiGuo, Rong Chen, Hui Li, “A Real-Time Collaborative Testing Approach forWeb Application: Via Multi-tasks Matching,” 2016 IEEE International Conferenceon Software Quality, Reliability and Security, QRS 2016, Companion, pp.61-68. (EI,CCF C类)

[5]. Shikai Guo, Rong Chen, Hui Li, Yaqing Liu,“Capability Matching and Heuristic Search for Job Assignment in CrowdsourcedWeb Application Testing,” The 2018 IEEE International Conference on Systems,Man, and Cybernetics (SMC 2018). (Accepted, EI)

[6]. Hui Li, Guofeng Gao, Rong Chen, Xin Ge, ShikaiGuo, Li-Ying Hao. The Influence Ranking for Testers in Bug Tracking Systems, InternationalJournal of Software Engineering and Knowledge Engineering, Accepted. (CCFC, SCI/EI)

[7]. Miaomiao Wei, Shikai Guo, Rong Chen, “EnhancingBug Report Assignment with an Optimized Reduction of Training Set,” The 11thInternational Conference on Knowledge Science, Engineering and Management (KSEM2018). (Accepted, EI, CCF C类)

[8]. Miaomiao Wei, Shikai Guo, Rong Chen, “WeightedData Set Reduction for Automatic Bug Triaging,” The Thirtieth InternationalConference on Software Engineering and Knowledge Engineering (SEKE 2018), Poster,(Accepted, EI, CCF C类)

[9]. Hui Li, Liying Hao, Xin Ge, Jian Gao, Shikai Guo, “Anagent-based approach for crowdsourcing software design,” 28th Chinese Controland Decision Conference, pp.4497-4501, 2016. (EI)

[10]. Rong Chen, Shifei Chen, Xiaoyao Zhang. ATwo-Staged Task Assignment Algorithm forWorker Recommendation in aCrowdsourcing Environment,  Intenational Conference onIndustrialEngineering and Engineering Management, Singapore, Singapore,2017: 2034-2038. (EI)


再投论文:

[11]. ShikaiGuo, Rong Chen, Hui Li, Yaqing Liu, “A Fuzzy K-NN Rule Based on SampleFuzzy Entropy and RSMOTE for Distribution Imbalance Bug Severity Prediction,”Software Testing, Verification and Reliability. (Under Review, SCI, CCFB类)

[12]. Rong Chen, Shikai Guo, Xizhao Wang, Tianlun Zhang, “Fusion of Multi- RSMOTEwith Fuzzy Integral to Classify Bug Reports with an Imbalanced SeverityDistribution,” IEEE Transactions on Fuzzy Systems. (Under Review, SCI,CCF B类)

[13]. ShikaiGuo, Rong Chen, Miaomiao Wei, Hui Li, Yaqing Liu, “IdentifyingHigh-Impact Bug Reports with Imbalanced Distribution by Using combination ofFeature Selection and RSMOTE,” IET Software. (Under Review, SCI, CCF B类)

[14]. ShikaiGuo, Rong Chen, Miaomiao Wei, Hui Li, Yaqing Liu, “Ensemble DataReduction Techniques and Multi-RSMOTE via Fuzzy Integral for Bug ReportClassification,” IEEE ACCESS. (UnderReview, SCI)

[15].Wenjun Tang, Rong Chen, Shikai Guo, “A novel approach to task publishing in acrowdsourcing environment,” International Journal of Software Engineering andKnowledge Engineering. (Major Revision, SCI, CCF C类)



标签


最新文章