版权所有:内蒙古大学图书馆 技术提供:维普资讯• 智图
内蒙古自治区呼和浩特市赛罕区大学西街235号 邮编: 010021
作者机构:Univ Wollongong Sch Comp & Informat Technol Inst Cybersecur & Cryptol Wollongong NSW 2522 Australia Swinburne Univ Technol Dept Comp Sci & Software Engn Hawthorn Vic 3122 Australia
出 版 物:《INTERNATIONAL JOURNAL OF SOFTWARE ENGINEERING AND KNOWLEDGE ENGINEERING》 (国际软件工程与知识工程杂志)
年 卷 期:2018年第28卷第10期
页 面:1399-1428页
核心收录:
学科分类:0808[工学-电气工程] 08[工学] 0835[工学-软件工程] 0812[工学-计算机科学与技术(可授工学、理学学位)]
基 金:Australian Research Council [LP160101691] Suzhou Insight Cloud Information Technology Co. Ltd Australian Research Council [LP160101691] Funding Source: Australian Research Council
主 题:Adaptive random testing failure-based testing web testing adaptive random sequence graphical output verification layout fault failure pattern
摘 要:As part of a software testing process, output verification poses a challenge when the output is not numeric or textual, such as graphical. The industry practice of using human oracles (testers) to observe and verify the correctness of the actual results is both expensive and error-prone. In particular, this practice is usually unsustainable when developing web applications - the most popular software of our era. This is because web applications change frequently due to the fast-evolving requirements amid popular demand. To improve the cost effectiveness of browser output verification, in this study we design failure-based testing techniques and evaluate the effectiveness and efficiency thereof in the context of web testing. With a novel application of the concept of adaptive random sequence (ARS), our approach leverages peculiar characteristics of failure patterns found in browser layout rendering. An empirical study shows that the use of failure patterns and inclination to guide the testing flow leads to more cost-effective results than other classic methods. This study extends the application of ARSs from the input space of programs to their output space, and also shows that adaptive random testing (ART) can outperform random testing (RT) in both failure detection effectiveness (in terms of F-measure) and failure detection efficiency (in terms of execution time).