首页 > 最新文献

Software Testing Verification & Reliability最新文献

英文 中文
Testing Object-Oriented Software 面向对象软件测试
IF 1.5 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2021-05-31 DOI: 10.1201/9781003168447-11
P. Jorgensen, Byron DeVries
{"title":"Testing Object-Oriented Software","authors":"P. Jorgensen, Byron DeVries","doi":"10.1201/9781003168447-11","DOIUrl":"https://doi.org/10.1201/9781003168447-11","url":null,"abstract":"","PeriodicalId":49506,"journal":{"name":"Software Testing Verification & Reliability","volume":"27 1","pages":""},"PeriodicalIF":1.5,"publicationDate":"2021-05-31","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"79131404","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 50
Statically driven generation of concurrent tests for thread‐safe classes 线程安全类的静态驱动并发测试生成
IF 1.5 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2021-05-04 DOI: 10.1002/stvr.1774
Valerio Terragni, M. Pezzè
Concurrency testing is an important activity to expose concurrency faults in thread‐safe classes. A concurrent test for a thread‐safe class is a set of method call sequences that exercise the public interface of the class from multiple threads. Automatically generating fault‐revealing concurrent tests within an affordable time budget is difficult due to the huge search space of possible concurrent tests. In this paper, we present DepCon+, a novel approach that reduces the search space of concurrent tests by leveraging statically computed dependencies among public methods. DepCon+ exploits the intuition that concurrent tests can expose thread‐safety violations that manifest exceptions or deadlocks, only if they exercise some specific method dependencies. DepCon+ provides an efficient way to identify such dependencies by statically analysing the code and relies on the computed dependencies to steer the test generation towards those concurrent tests that exhibit the computed dependencies. We developed a prototype DepCon+ implementation for Java and evaluated the approach on 19 known concurrency faults of thread‐safe classes that lead to thread‐safety violations of either exception or deadlock type. The results presented in this paper show that DepCon+ is more effective than state‐of‐the‐art approaches in exposing the concurrency faults. The search space pruning of DepCon+ dramatically reduces the search space of possible concurrent tests, without missing any thread‐safety violations.
并发测试是在线程安全类中暴露并发性错误的重要活动。线程安全类的并发测试是一组方法调用序列,这些方法调用序列从多个线程中执行类的公共接口。由于可能的并发测试的巨大搜索空间,在可承受的时间预算内自动生成故障显示并发测试是困难的。在本文中,我们提出了DepCon+,一种通过利用静态计算的公共方法之间的依赖关系来减少并发测试的搜索空间的新方法。DepCon+利用了一种直觉,即只有当并发测试执行一些特定的方法依赖时,才会暴露线程安全违规,从而出现异常或死锁。DepCon+提供了一种有效的方法,通过静态分析代码来识别这些依赖关系,并依赖于计算依赖关系,从而将测试生成导向那些显示计算依赖关系的并发测试。我们为Java开发了一个DepCon+实现的原型,并对19个已知的线程安全类并发错误进行了评估,这些错误会导致线程安全违反异常或死锁类型。本文的结果表明,DepCon+在暴露并发性错误方面比现有的方法更有效。DepCon+的搜索空间修剪极大地减少了可能并发测试的搜索空间,而不会遗漏任何线程安全违规。
{"title":"Statically driven generation of concurrent tests for thread‐safe classes","authors":"Valerio Terragni, M. Pezzè","doi":"10.1002/stvr.1774","DOIUrl":"https://doi.org/10.1002/stvr.1774","url":null,"abstract":"Concurrency testing is an important activity to expose concurrency faults in thread‐safe classes. A concurrent test for a thread‐safe class is a set of method call sequences that exercise the public interface of the class from multiple threads. Automatically generating fault‐revealing concurrent tests within an affordable time budget is difficult due to the huge search space of possible concurrent tests. In this paper, we present DepCon+, a novel approach that reduces the search space of concurrent tests by leveraging statically computed dependencies among public methods. DepCon+ exploits the intuition that concurrent tests can expose thread‐safety violations that manifest exceptions or deadlocks, only if they exercise some specific method dependencies. DepCon+ provides an efficient way to identify such dependencies by statically analysing the code and relies on the computed dependencies to steer the test generation towards those concurrent tests that exhibit the computed dependencies. We developed a prototype DepCon+ implementation for Java and evaluated the approach on 19 known concurrency faults of thread‐safe classes that lead to thread‐safety violations of either exception or deadlock type. The results presented in this paper show that DepCon+ is more effective than state‐of‐the‐art approaches in exposing the concurrency faults. The search space pruning of DepCon+ dramatically reduces the search space of possible concurrent tests, without missing any thread‐safety violations.","PeriodicalId":49506,"journal":{"name":"Software Testing Verification & Reliability","volume":"59 1 1","pages":""},"PeriodicalIF":1.5,"publicationDate":"2021-05-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"90408386","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
Testing of adaptive and context‐aware systems: approaches and challenges 自适应和环境感知系统的测试:方法和挑战
IF 1.5 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2021-05-03 DOI: 10.1002/stvr.1772
B. R. Siqueira, F. Ferrari, Kathiani E. Souza, V. V. D. Camargo, R. Lemos
Adaptive systems (ASs) and context‐aware systems (CASs) are able to evaluate their own behaviour and to adapt it when the system fails to accomplish its goals or when better functionality or performance is possible. Ensuring the reliability of ASs and CASs is demanding because failures might have undesirable consequences. Testing ASs and CASs effectively is not trivial because of the inherent characteristics of these systems. The literature lacks a comprehensive review that provides a broad picture of the area; current reviews are outdated and incomplete. The objectives of this study are characterizing the state of the art in AS and CAS testing and discussing approaches, challenges, observed trends, and research limitations and directions. We performed a systematic literature review (SLR) and a thematic analysis of studies, reporting up‐to‐date, refined and extended results when compared with existing reviews. Based on 102 selected studies, we (i) characterized testing approaches by grouping techniques for ASs and CASs; (ii) updated and refined a characterization of testing challenges for ASs and CASs; and (iii) analysed and discussed research trends and implications for AS and CAS testing. There are recurring research concerns regarding AS and CAS testing. Examples are the generation of test cases and built‐in tests. Moreover, we also identified recurring testing challenges such as context monitoring and runtime decisions. Moreover, there are some trends such as model‐based testing and hybrid techniques and some little investigated issues like uncertainty and prediction of changes. All in all, our results may provide guidance for developers and researchers with respect to the practice and the future research on AS and CAS testing.
自适应系统(ASs)和上下文感知系统(CASs)能够评估自己的行为,并在系统无法实现其目标或可能实现更好的功能或性能时进行调整。确保应用服务器和CASs的可靠性要求很高,因为故障可能会产生不良后果。由于这些系统的固有特性,有效地测试ASs和CASs并不是微不足道的。文献缺乏一个全面的审查,提供了该地区的一个广泛的画面;当前的审查是过时和不完整的。本研究的目的是描述AS和CAS测试的最新状况,并讨论方法、挑战、观察到的趋势、研究局限性和方向。我们进行了系统的文献综述(SLR)和研究的专题分析,报告了与现有综述相比较的最新的、改进的和扩展的结果。基于102项选定的研究,我们(i)通过分组技术对ASs和CASs的测试方法进行了表征;(ii)更新和完善了对ASs和CASs测试挑战的描述;(iii)分析和讨论AS和CAS测试的研究趋势和影响。关于AS和CAS测试有反复出现的研究问题。例子是测试用例和内建测试的生成。此外,我们还确定了反复出现的测试挑战,例如上下文监视和运行时决策。此外,还有一些趋势,如基于模型的测试和混合技术,以及一些研究较少的问题,如不确定性和变化预测。总而言之,我们的研究结果可以为AS和CAS测试的实践和未来的研究提供指导。
{"title":"Testing of adaptive and context‐aware systems: approaches and challenges","authors":"B. R. Siqueira, F. Ferrari, Kathiani E. Souza, V. V. D. Camargo, R. Lemos","doi":"10.1002/stvr.1772","DOIUrl":"https://doi.org/10.1002/stvr.1772","url":null,"abstract":"Adaptive systems (ASs) and context‐aware systems (CASs) are able to evaluate their own behaviour and to adapt it when the system fails to accomplish its goals or when better functionality or performance is possible. Ensuring the reliability of ASs and CASs is demanding because failures might have undesirable consequences. Testing ASs and CASs effectively is not trivial because of the inherent characteristics of these systems. The literature lacks a comprehensive review that provides a broad picture of the area; current reviews are outdated and incomplete. The objectives of this study are characterizing the state of the art in AS and CAS testing and discussing approaches, challenges, observed trends, and research limitations and directions. We performed a systematic literature review (SLR) and a thematic analysis of studies, reporting up‐to‐date, refined and extended results when compared with existing reviews. Based on 102 selected studies, we (i) characterized testing approaches by grouping techniques for ASs and CASs; (ii) updated and refined a characterization of testing challenges for ASs and CASs; and (iii) analysed and discussed research trends and implications for AS and CAS testing. There are recurring research concerns regarding AS and CAS testing. Examples are the generation of test cases and built‐in tests. Moreover, we also identified recurring testing challenges such as context monitoring and runtime decisions. Moreover, there are some trends such as model‐based testing and hybrid techniques and some little investigated issues like uncertainty and prediction of changes. All in all, our results may provide guidance for developers and researchers with respect to the practice and the future research on AS and CAS testing.","PeriodicalId":49506,"journal":{"name":"Software Testing Verification & Reliability","volume":"42 1","pages":""},"PeriodicalIF":1.5,"publicationDate":"2021-05-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"82179441","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 6
Generating and selecting resilient and maintainable locators for Web automated testing 为Web自动化测试生成和选择弹性和可维护的定位器
IF 1.5 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2021-05-01 DOI: 10.1002/stvr.1760
Vu-Loc Nguyen, T. To, Gia-Han Diep
Web user interface (UI) test automation strategies have been dominated by programmable and record–playback approaches. Of these, record–playback allows creating automation tests easily and reduces the cost of test generation. However, this approach increases the cost of test maintenance due to its unstable generated locators for identifying UI objects during playback. In this paper, we propose a new approach to generating and selecting resilient and maintainable locators. Our approach consists of two parts, a new XPath construction method and selecting the best XPath to locate the target element. Our XPath construction method relies on semantic structures of Web pages to locate the target element using its neighbors. We conducted an experiment on 15 popular websites. The results show that our approach outperforms the state‐of‐the‐practice/art Selenium IDE and Robula+ in locating target elements by effectively avoiding wrong locators. It also produces more readable XPaths (hence more maintainable tests) than do these approaches.
Web用户界面(UI)测试自动化策略一直被可编程和记录回放方法所主导。其中,记录回放允许轻松地创建自动化测试,并降低测试生成的成本。然而,这种方法增加了测试维护的成本,因为它生成的用于在回放期间识别UI对象的定位器不稳定。在本文中,我们提出了一种新的方法来产生和选择弹性和可维护的定位器。我们的方法由两部分组成,一种新的XPath构造方法和选择最佳XPath来定位目标元素。我们的XPath构造方法依赖于Web页面的语义结构来使用相邻元素定位目标元素。我们在15个热门网站上进行了一项实验。结果表明,我们的方法通过有效避免错误的定位器,在定位目标元素方面优于目前最先进的Selenium IDE和Robula+。与这些方法相比,它还生成了更具可读性的xpath(因此更易维护的测试)。
{"title":"Generating and selecting resilient and maintainable locators for Web automated testing","authors":"Vu-Loc Nguyen, T. To, Gia-Han Diep","doi":"10.1002/stvr.1760","DOIUrl":"https://doi.org/10.1002/stvr.1760","url":null,"abstract":"Web user interface (UI) test automation strategies have been dominated by programmable and record–playback approaches. Of these, record–playback allows creating automation tests easily and reduces the cost of test generation. However, this approach increases the cost of test maintenance due to its unstable generated locators for identifying UI objects during playback. In this paper, we propose a new approach to generating and selecting resilient and maintainable locators. Our approach consists of two parts, a new XPath construction method and selecting the best XPath to locate the target element. Our XPath construction method relies on semantic structures of Web pages to locate the target element using its neighbors. We conducted an experiment on 15 popular websites. The results show that our approach outperforms the state‐of‐the‐practice/art Selenium IDE and Robula+ in locating target elements by effectively avoiding wrong locators. It also produces more readable XPaths (hence more maintainable tests) than do these approaches.","PeriodicalId":49506,"journal":{"name":"Software Testing Verification & Reliability","volume":"2 1","pages":""},"PeriodicalIF":1.5,"publicationDate":"2021-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"87354836","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 6
testar – scriptless testing through graphical user interface 通过图形用户界面进行无脚本测试
IF 1.5 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2021-04-25 DOI: 10.1002/stvr.1771
T. Vos, Pekka Aho, Fernando Pastor Ricós, Olivia Rodriguez Valdés, Adolf Mulders
Covering all the possible paths of the graphical user interface (GUI) with test scripts would take too much effort and result in serious maintenance issues. We propose complementing scripted testing with scriptless test automation using the open‐source testar tool. This paper gives a comprehensive overview of testar and its latest extensions together with the ongoing and future research. With this paper, we hope we can help and encourage other researchers to use testar for their GUI testing‐related research and pave the way for an international research agenda in GUI testing built upon stable and open‐source infrastructure.
用测试脚本覆盖图形用户界面(GUI)的所有可能路径会花费太多的精力,并导致严重的维护问题。我们建议使用开源的testar工具,用无脚本测试自动化来补充脚本测试。本文全面介绍了testar及其最新扩展,以及正在进行的和未来的研究。通过本文,我们希望能够帮助和鼓励其他研究人员使用testar进行与GUI测试相关的研究,并为建立在稳定和开源基础设施上的GUI测试的国际研究议程铺平道路。
{"title":"testar – scriptless testing through graphical user interface","authors":"T. Vos, Pekka Aho, Fernando Pastor Ricós, Olivia Rodriguez Valdés, Adolf Mulders","doi":"10.1002/stvr.1771","DOIUrl":"https://doi.org/10.1002/stvr.1771","url":null,"abstract":"Covering all the possible paths of the graphical user interface (GUI) with test scripts would take too much effort and result in serious maintenance issues. We propose complementing scripted testing with scriptless test automation using the open‐source testar tool. This paper gives a comprehensive overview of testar and its latest extensions together with the ongoing and future research. With this paper, we hope we can help and encourage other researchers to use testar for their GUI testing‐related research and pave the way for an international research agenda in GUI testing built upon stable and open‐source infrastructure.","PeriodicalId":49506,"journal":{"name":"Software Testing Verification & Reliability","volume":"127 1","pages":""},"PeriodicalIF":1.5,"publicationDate":"2021-04-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"89066435","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 10
Sidereal: Statistical adaptive generation of robust locators for web testing Sidereal:统计自适应生成健壮的web测试定位器
IF 1.5 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2021-04-25 DOI: 10.1002/stvr.1767
Maurizio Leotta, F. Ricca, P. Tonella
By ensuring adequate functional coverage, End‐to‐End (E2E) testing is a key enabling factor of continuous integration. This is even more true for web applications, where automated E2E testing is the only way to exercise the full stack used to create a modern application. The test code used for web testing usually relies on DOM locators, often expressed as XPath expressions, to identify the web elements and to extract the data checked in assertions. When applications evolve, the most dominant cost for the evolution of test code is due to broken locators, which fail to locate the target element in the novel versions and must be repaired. In this paper, we formulate the robust XPath locator generation problem as a graph exploration problem, instead of relying on ad‐hoc heuristics as the one implemented by the state of the art tool robula+. Our approach is based on a statistical adaptive algorithm implemented by the tool sidereal, which outperforms robula+'s heuristics in terms of robustness by learning the potential fragility of HTML properties from previous versions of the application under test. sidereal was applied to six applications and to a total of 611 locators and was compared against two baseline algorithms, robula+ and Montoto. The adoption of sidereal results in a significant reduction of the number of broken locators (respectively ‐55% and ‐70%). The time for generating such robust locators was deemed acceptable being in the order of hundredths of second.
通过确保足够的功能覆盖,端到端(E2E)测试是持续集成的关键促成因素。对于web应用程序更是如此,在web应用程序中,自动化的端到端测试是测试用于创建现代应用程序的完整堆栈的唯一方法。用于web测试的测试代码通常依赖于DOM定位器(通常表示为XPath表达式)来识别web元素并提取断言中检查的数据。当应用程序发展时,测试代码发展的最主要成本是由于损坏的定位器,它无法定位新版本中的目标元素,必须修复。在本文中,我们将健壮的XPath定位器生成问题描述为一个图探索问题,而不是依赖于由最先进的工具robula+实现的临时启发式。我们的方法基于由工具sidereal实现的统计自适应算法,该算法通过从被测应用程序的先前版本中学习HTML属性的潜在脆弱性,在鲁棒性方面优于robula+的启发式算法。sidereal应用于六个应用程序,总共611个定位器,并与robula+和Montoto两种基线算法进行了比较。采用sidereal可显著减少定位器损坏的数量(分别为- 55%和- 70%)。产生这种强大的定位器的时间被认为是可以接受的,在百分之一秒的数量级。
{"title":"Sidereal: Statistical adaptive generation of robust locators for web testing","authors":"Maurizio Leotta, F. Ricca, P. Tonella","doi":"10.1002/stvr.1767","DOIUrl":"https://doi.org/10.1002/stvr.1767","url":null,"abstract":"By ensuring adequate functional coverage, End‐to‐End (E2E) testing is a key enabling factor of continuous integration. This is even more true for web applications, where automated E2E testing is the only way to exercise the full stack used to create a modern application. The test code used for web testing usually relies on DOM locators, often expressed as XPath expressions, to identify the web elements and to extract the data checked in assertions. When applications evolve, the most dominant cost for the evolution of test code is due to broken locators, which fail to locate the target element in the novel versions and must be repaired. In this paper, we formulate the robust XPath locator generation problem as a graph exploration problem, instead of relying on ad‐hoc heuristics as the one implemented by the state of the art tool robula+. Our approach is based on a statistical adaptive algorithm implemented by the tool sidereal, which outperforms robula+'s heuristics in terms of robustness by learning the potential fragility of HTML properties from previous versions of the application under test. sidereal was applied to six applications and to a total of 611 locators and was compared against two baseline algorithms, robula+ and Montoto. The adoption of sidereal results in a significant reduction of the number of broken locators (respectively ‐55% and ‐70%). The time for generating such robust locators was deemed acceptable being in the order of hundredths of second.","PeriodicalId":49506,"journal":{"name":"Software Testing Verification & Reliability","volume":"9 1","pages":""},"PeriodicalIF":1.5,"publicationDate":"2021-04-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"89570485","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 11
Special issue on new generations of UI testing 关于新一代UI测试的特刊
IF 1.5 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2021-03-17 DOI: 10.1002/stvr.1770
Emil Alégroth, Luca Ardito, Riccardo Coppola, R. Feldt
Market demands for faster delivery and higher software quality are progressively becoming more stringent. A key hindrance for software companies to meet those demands is how to test the software due to the intrinsic costs of development, maintenance and evolution of testware, especially since testware should be defined and aligned, with all layers of the system under test (SUT), including all user interface (UI) abstraction levels. UI-based test approaches are forms of end-to-end testing. The interaction with the system is carried out by mimicking the operations that a human user would perform. Regarding graphical user interfaces (i.e., GUIs), different GUI-based test approaches exist according to the layer of abstraction of the GUI that is considered for creating test locators and oracles: specifically, first generation, or coordinate-based, tests use the exact position on the screen to identify the elements to interact with; second generation, or layout-based, tests leverage GUI properties as locators; and third generation, or visual, tests make use of image recognition. The three approaches provide various benefits and drawbacks. They are seldom used together because of the costs mentioned above, despite growing academic evidence of the complimentary benefits. User interfaces are, however, not limited to GUIs, especially with the recent diffusion of innovative typologies of user interfaces (e.g., conversational, voice-recognition, gesture-based and textual UIs) that are still rarely tested by developers; testing techniques can also be distinguished based on the way the test scripts are generated, i.e., if they are written inside JUnit-like test scripts or obtained through the capture of interactions with the SUT, or automatically obtained traversing a model of the user interface, as modern model-based testing tools do it. Test automation is a well-rooted practice in the industrial environment. However, there are software development domains, e.g., web and mobile apps, where UI testing is still not adopted on a systematic basis. The results of many investigations in literature highlighted many reasons for this lack of penetration of the most evolved UI testing techniques among developers: 1 Scarce documentation of the available testing tools; 2 Significant maintenance effort when keeping the test scripts aligned with the evolution of the AUT, e.g., for performing regression testing; 3 Limited perception of the benefits that advanced UI testing techniques yield when confronted with traditional manual testing.
市场对更快的交付和更高的软件质量的需求正逐渐变得越来越严格。软件公司满足这些需求的一个关键障碍是如何测试软件,这是由于测试软件的开发、维护和演变的内在成本,特别是因为测试软件应该被定义并与被测系统(SUT)的所有层对齐,包括所有用户界面(UI)抽象级别。基于ui的测试方法是端到端测试的形式。与系统的交互是通过模仿人类用户将执行的操作来实现的。关于图形用户界面(即GUI),根据用于创建测试定位器和预言器的GUI的抽象层,存在不同的基于GUI的测试方法:具体来说,第一代或基于坐标的测试使用屏幕上的确切位置来识别要与之交互的元素;第二代或基于布局的测试利用GUI属性作为定位器;第三代或视觉测试利用图像识别。这三种方法各有优缺点。尽管越来越多的学术证据表明它们的好处是互补的,但由于上面提到的成本,它们很少一起使用。然而,用户界面并不局限于gui,特别是随着最近用户界面的创新类型的扩散(例如,会话,语音识别,基于手势和文本的ui),仍然很少被开发人员测试;测试技术也可以根据生成测试脚本的方式来区分,也就是说,如果它们是在类似junit的测试脚本中编写的,或者是通过与SUT交互的捕获获得的,或者是自动地遍历用户界面的模型获得的,就像现代基于模型的测试工具所做的那样。测试自动化在工业环境中是一种根深蒂固的实践。然而,在一些软件开发领域,例如web和移动应用,UI测试仍然没有被系统地采用。许多文献调查的结果强调了开发人员对最先进的UI测试技术缺乏渗透的许多原因:1缺乏可用测试工具的文档;当保持测试脚本与AUT的发展保持一致时,重要的维护工作,例如,执行回归测试;当面对传统的手工测试时,对先进UI测试技术产生的好处的认识有限。
{"title":"Special issue on new generations of UI testing","authors":"Emil Alégroth, Luca Ardito, Riccardo Coppola, R. Feldt","doi":"10.1002/stvr.1770","DOIUrl":"https://doi.org/10.1002/stvr.1770","url":null,"abstract":"Market demands for faster delivery and higher software quality are progressively becoming more stringent. A key hindrance for software companies to meet those demands is how to test the software due to the intrinsic costs of development, maintenance and evolution of testware, especially since testware should be defined and aligned, with all layers of the system under test (SUT), including all user interface (UI) abstraction levels. UI-based test approaches are forms of end-to-end testing. The interaction with the system is carried out by mimicking the operations that a human user would perform. Regarding graphical user interfaces (i.e., GUIs), different GUI-based test approaches exist according to the layer of abstraction of the GUI that is considered for creating test locators and oracles: specifically, first generation, or coordinate-based, tests use the exact position on the screen to identify the elements to interact with; second generation, or layout-based, tests leverage GUI properties as locators; and third generation, or visual, tests make use of image recognition. The three approaches provide various benefits and drawbacks. They are seldom used together because of the costs mentioned above, despite growing academic evidence of the complimentary benefits. User interfaces are, however, not limited to GUIs, especially with the recent diffusion of innovative typologies of user interfaces (e.g., conversational, voice-recognition, gesture-based and textual UIs) that are still rarely tested by developers; testing techniques can also be distinguished based on the way the test scripts are generated, i.e., if they are written inside JUnit-like test scripts or obtained through the capture of interactions with the SUT, or automatically obtained traversing a model of the user interface, as modern model-based testing tools do it. Test automation is a well-rooted practice in the industrial environment. However, there are software development domains, e.g., web and mobile apps, where UI testing is still not adopted on a systematic basis. The results of many investigations in literature highlighted many reasons for this lack of penetration of the most evolved UI testing techniques among developers: 1 Scarce documentation of the available testing tools; 2 Significant maintenance effort when keeping the test scripts aligned with the evolution of the AUT, e.g., for performing regression testing; 3 Limited perception of the benefits that advanced UI testing techniques yield when confronted with traditional manual testing.","PeriodicalId":49506,"journal":{"name":"Software Testing Verification & Reliability","volume":"1 1","pages":""},"PeriodicalIF":1.5,"publicationDate":"2021-03-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"89731450","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
Remote embedded devices test framework on the cloud 远程嵌入式设备在云上测试框架
IF 1.5 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2021-03-03 DOI: 10.1002/stvr.1768
Il-Seok Choi, C. Jeong
Embedded systems have high coupling and dependency among different hardware and software components in heterogeneous layers, which makes location and issue tracking in their testing difficult. Despite these poor verification conditions, even the most important reliability quality verification among embedded system characteristics is verified with insufficient sample size, typical test cases, and general test strategies, following limitations such as development costs and scheduling. As a result, shipments are highly likely to lead to various reliability quality problems because items have not been verified considering reliability quality characteristics. Hence, to address this gap, this study developed remote embedded device test framework on the cloud (RED‐TFC), which has an innovative reliability test manager component that can automatically perform various tests for the evaluation of reliability and performance of distributed shared devices by utilizing the cloud concept. RED‐TFC offers two key enhancements over existing testing services: (i) the adaptive sample scale for reliability test (ASRT), a feature that identifies the most appropriate sample size for performing functionality and reliability tests of remote verification targets connected to the RED‐TFC server; and (ii) the mass sample reliability test (MSRT), which uses a test case that is specific to reliability, with the sample size obtained by ASRT, to perform verification following the Markov prediction process. This paper analyses two Android smartphone models considered the most generic examples, including many embedded components, and presents a method of detecting a high number of reliability problems in smartphones using the proposed RED‐TFC and its implications.
嵌入式系统在异构层中不同的硬件和软件组件之间具有高度的耦合性和依赖性,这给其测试中的定位和问题跟踪带来了困难。尽管有这些糟糕的验证条件,在嵌入式系统特性中,即使是最重要的可靠性质量验证也是用不足的样本量、典型的测试用例和一般的测试策略进行验证的,并遵循开发成本和调度等限制。因此,考虑到可靠性质量特征,货物没有经过验证,因此很有可能导致各种可靠性质量问题。因此,为了解决这一差距,本研究开发了云上远程嵌入式设备测试框架(RED‐TFC),该框架具有创新的可靠性测试管理器组件,可以利用云概念自动执行各种测试,以评估分布式共享设备的可靠性和性能。RED‐TFC在现有测试服务上提供了两个关键增强功能:(i)可靠性测试的自适应样本规模(ASRT),该功能确定了连接到RED‐TFC服务器的远程验证目标执行功能和可靠性测试的最合适样本大小;(ii)质量样本可靠性检验(MSRT),它使用特定于可靠性的测试用例,使用ASRT获得的样本量,按照马尔可夫预测过程进行验证。本文分析了两种最常见的Android智能手机模型,包括许多嵌入式组件,并提出了一种使用RED - TFC检测智能手机中大量可靠性问题的方法及其含义。
{"title":"Remote embedded devices test framework on the cloud","authors":"Il-Seok Choi, C. Jeong","doi":"10.1002/stvr.1768","DOIUrl":"https://doi.org/10.1002/stvr.1768","url":null,"abstract":"Embedded systems have high coupling and dependency among different hardware and software components in heterogeneous layers, which makes location and issue tracking in their testing difficult. Despite these poor verification conditions, even the most important reliability quality verification among embedded system characteristics is verified with insufficient sample size, typical test cases, and general test strategies, following limitations such as development costs and scheduling. As a result, shipments are highly likely to lead to various reliability quality problems because items have not been verified considering reliability quality characteristics. Hence, to address this gap, this study developed remote embedded device test framework on the cloud (RED‐TFC), which has an innovative reliability test manager component that can automatically perform various tests for the evaluation of reliability and performance of distributed shared devices by utilizing the cloud concept. RED‐TFC offers two key enhancements over existing testing services: (i) the adaptive sample scale for reliability test (ASRT), a feature that identifies the most appropriate sample size for performing functionality and reliability tests of remote verification targets connected to the RED‐TFC server; and (ii) the mass sample reliability test (MSRT), which uses a test case that is specific to reliability, with the sample size obtained by ASRT, to perform verification following the Markov prediction process. This paper analyses two Android smartphone models considered the most generic examples, including many embedded components, and presents a method of detecting a high number of reliability problems in smartphones using the proposed RED‐TFC and its implications.","PeriodicalId":49506,"journal":{"name":"Software Testing Verification & Reliability","volume":"14 1","pages":""},"PeriodicalIF":1.5,"publicationDate":"2021-03-03","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"73449662","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Performance assessment based on stochastic differential equation and effort data for edge computing 基于随机微分方程和努力数据的边缘计算性能评估
IF 1.5 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2021-02-15 DOI: 10.1002/stvr.1766
Y. Tamura, S. Yamada
Many open‐source software are included in commercial software. Also, several open‐source software are used in the cloud service such as OpenStack and Eucalyptus from standpoint of the unified management, cost reduction and maintainability. In particular, the operation phase of cloud service has a unique feature with uncertainty such as big data and network connectivity, because the operation phase of cloud service changes depending on many external factors. On the other hand, the effective methods of performance assessments for cloud service have only a few presented. Recently, edge computing is the focus of attention because of the problems of connection and processing delay in case of cloud computing. It is known as that cloud computing treats big data. On the other hand, edge computing operates on instant data. We focus on the performance assessments based on the relationship between the cloud and edge services operated by using several open‐source software. Then we propose a two‐dimensional stochastic differential equation model considering the unique features with uncertainty from big data under the operation of cloud and edge services. Also, we analyse actual data to show numerical examples of performance assessments considering the network connectivity as characteristics of cloud and edge services. Moreover, we compare the noise terms of the proposed model for actual data.
许多开源软件都包含在商业软件中。此外,从统一管理、降低成本和可维护性的角度来看,云服务中使用了一些开源软件,如OpenStack和Eucalyptus。特别是云服务的运营阶段具有大数据、网络连通性等不确定性的独特特征,因为云服务的运营阶段的变化取决于许多外部因素。另一方面,有效的云服务绩效评估方法却很少。最近,由于云计算的连接和处理延迟问题,边缘计算成为人们关注的焦点。众所周知,云计算处理大数据。另一方面,边缘计算对即时数据进行操作。我们专注于基于使用几个开源软件运行的云和边缘服务之间关系的性能评估。在此基础上,提出了考虑云计算和边缘服务下大数据不确定性的二维随机微分方程模型。此外,我们还分析了实际数据,以显示考虑网络连接作为云和边缘服务特征的性能评估的数值示例。此外,我们将所提出的模型的噪声项与实际数据进行比较。
{"title":"Performance assessment based on stochastic differential equation and effort data for edge computing","authors":"Y. Tamura, S. Yamada","doi":"10.1002/stvr.1766","DOIUrl":"https://doi.org/10.1002/stvr.1766","url":null,"abstract":"Many open‐source software are included in commercial software. Also, several open‐source software are used in the cloud service such as OpenStack and Eucalyptus from standpoint of the unified management, cost reduction and maintainability. In particular, the operation phase of cloud service has a unique feature with uncertainty such as big data and network connectivity, because the operation phase of cloud service changes depending on many external factors. On the other hand, the effective methods of performance assessments for cloud service have only a few presented. Recently, edge computing is the focus of attention because of the problems of connection and processing delay in case of cloud computing. It is known as that cloud computing treats big data. On the other hand, edge computing operates on instant data. We focus on the performance assessments based on the relationship between the cloud and edge services operated by using several open‐source software. Then we propose a two‐dimensional stochastic differential equation model considering the unique features with uncertainty from big data under the operation of cloud and edge services. Also, we analyse actual data to show numerical examples of performance assessments considering the network connectivity as characteristics of cloud and edge services. Moreover, we compare the noise terms of the proposed model for actual data.","PeriodicalId":49506,"journal":{"name":"Software Testing Verification & Reliability","volume":"150 1","pages":""},"PeriodicalIF":1.5,"publicationDate":"2021-02-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"77402708","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 3
Automated visual classification of DOM‐based presentation failure reports for responsive web pages 响应式网页的基于DOM的表示失败报告的自动视觉分类
IF 1.5 4区 计算机科学 Q3 COMPUTER SCIENCE, SOFTWARE ENGINEERING Pub Date : 2021-02-14 DOI: 10.1002/stvr.1756
Ibrahim Althomali, G. M. Kapfhammer, Phil McMinn
Since it is common for the users of a web page to access it through a wide variety of devices—including desktops, laptops, tablets and phones—web developers rely on responsive web design (RWD) principles and frameworks to create sites that are useful on all devices. A correctly implemented responsive web page adjusts its layout according to the viewport width of the device in use, thereby ensuring that its design suitably features the content. Since the use of complex RWD frameworks often leads to web pages with hard‐to‐detect responsive layout failures (RLFs), developers employ testing tools that generate reports of potential RLFs. Since testing tools for responsive web pages, like ReDeCheck, analyse a web page representation called the Document Object Model (DOM), they may inadvertently flag concerns that are not human visible, thereby requiring developers to manually confirm and classify each potential RLF as a true positive (TP), false positive (FP), or non‐observable issue (NOI)—a process that is time consuming and error prone. The conference version of this paper presented Viser, a tool that automatically classified three types of RLFs reported by ReDeCheck. Since Viser was not designed to automatically confirm and classify two types of RLFs that ReDeCheck's DOM‐based analysis could surface, this paper introduces Verve, a tool that automatically classifies all RLF types reported by ReDeCheck. Along with manipulating the opacity of HTML elements in a web page, as does Viser, the Verve tool also uses histogram‐based image comparison to classify RLFs in web pages. Incorporating both the 25 web pages used in prior experiments and 20 new pages not previously considered, this paper's empirical study reveals that Verve's classification of all five types of RLFs frequently agrees with classifications produced manually by humans. The experiments also reveal that Verve took on average about 4 s to classify any of the RLFs among the 469 reported by ReDeCheck. Since this paper demonstrates that classifying an RLF as a TP, FP, or NOI with Verve, a publicly available tool, is less subjective and error prone than the same manual process done by a human web developer, we argue that it is well‐suited for supporting the testing of complex responsive web pages.
由于网页的用户通常通过各种各样的设备(包括台式机、笔记本电脑、平板电脑和手机)访问网页,因此web开发人员依靠响应式网页设计(RWD)原则和框架来创建在所有设备上都有用的网站。一个正确实现的响应式网页会根据所使用设备的视口宽度调整其布局,从而确保其设计适合内容。由于使用复杂的RWD框架通常会导致网页出现难以检测的响应式布局失败(rlf),开发人员使用测试工具生成潜在rlf的报告。由于响应式网页的测试工具,如ReDeCheck,分析了一个称为文档对象模型(DOM)的网页表示,它们可能会无意中标记出人类看不到的问题,因此需要开发人员手动确认并将每个潜在的RLF分类为真阳性(TP),假阳性(FP)或不可观察问题(NOI) -这是一个耗时且容易出错的过程。这篇论文的会议版本介绍了Viser,一个自动分类ReDeCheck报告的三种类型rlf的工具。由于Viser的设计不是为了自动确认和分类ReDeCheck基于DOM的分析可能出现的两种类型的RLF,因此本文介绍了Verve,一种自动分类ReDeCheck报告的所有RLF类型的工具。除了操纵网页中HTML元素的不透明度外,Verve工具还使用基于直方图的图像比较来对网页中的rlf进行分类。结合先前实验中使用的25个网页和之前未考虑的20个新网页,本文的实证研究表明,Verve对所有五种类型的rlf的分类通常与人类手动生成的分类一致。实验还表明,Verve在ReDeCheck报告的469个rlf中平均花了大约45秒的时间来分类任何一个rlf。由于本文证明了使用Verve(一个公开可用的工具)将RLF分类为TP、FP或NOI,比由人类web开发人员完成的相同手动过程更不主观,更容易出错,因此我们认为它非常适合支持复杂响应性web页面的测试。
{"title":"Automated visual classification of DOM‐based presentation failure reports for responsive web pages","authors":"Ibrahim Althomali, G. M. Kapfhammer, Phil McMinn","doi":"10.1002/stvr.1756","DOIUrl":"https://doi.org/10.1002/stvr.1756","url":null,"abstract":"Since it is common for the users of a web page to access it through a wide variety of devices—including desktops, laptops, tablets and phones—web developers rely on responsive web design (RWD) principles and frameworks to create sites that are useful on all devices. A correctly implemented responsive web page adjusts its layout according to the viewport width of the device in use, thereby ensuring that its design suitably features the content. Since the use of complex RWD frameworks often leads to web pages with hard‐to‐detect responsive layout failures (RLFs), developers employ testing tools that generate reports of potential RLFs. Since testing tools for responsive web pages, like ReDeCheck, analyse a web page representation called the Document Object Model (DOM), they may inadvertently flag concerns that are not human visible, thereby requiring developers to manually confirm and classify each potential RLF as a true positive (TP), false positive (FP), or non‐observable issue (NOI)—a process that is time consuming and error prone. The conference version of this paper presented Viser, a tool that automatically classified three types of RLFs reported by ReDeCheck. Since Viser was not designed to automatically confirm and classify two types of RLFs that ReDeCheck's DOM‐based analysis could surface, this paper introduces Verve, a tool that automatically classifies all RLF types reported by ReDeCheck. Along with manipulating the opacity of HTML elements in a web page, as does Viser, the Verve tool also uses histogram‐based image comparison to classify RLFs in web pages. Incorporating both the 25 web pages used in prior experiments and 20 new pages not previously considered, this paper's empirical study reveals that Verve's classification of all five types of RLFs frequently agrees with classifications produced manually by humans. The experiments also reveal that Verve took on average about 4 s to classify any of the RLFs among the 469 reported by ReDeCheck. Since this paper demonstrates that classifying an RLF as a TP, FP, or NOI with Verve, a publicly available tool, is less subjective and error prone than the same manual process done by a human web developer, we argue that it is well‐suited for supporting the testing of complex responsive web pages.","PeriodicalId":49506,"journal":{"name":"Software Testing Verification & Reliability","volume":"2 1","pages":""},"PeriodicalIF":1.5,"publicationDate":"2021-02-14","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"80906269","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 3
期刊
Software Testing Verification & Reliability
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1