首页 > 最新文献

2021 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW)最新文献

英文 中文
Automatic Equivalent Mutants Classification Using Abstract Syntax Tree Neural Networks 基于抽象语法树神经网络的等效突变体自动分类
Samuel Peacock, Lin Deng, J. Dehlinger, Suranjan Chakraborty
Mutation testing is a testing technique that is effective at designing tests and evaluating an existing test suite. Even though mutation testing has been developed to be applicable and effective towards different types of software systems and programing languages for many years, wide industrial use of mutation testing has not yet been seen. One primary reason that prevents developers and testers from using mutation testing is the expensive computational cost. Specifically, the need to manually identify equivalent mutants is a major obstacle and makes mutation testing very time consuming and labor intensive. This paper addresses this limitation and proposes a machine learning-based approach that designs and trains an abstract syntax tree recurrent neural network model to automatically classify equivalent mutants during the process of mutation testing. A pilot study with 582 mutants shows that the proposed machine learning-based approach can automatically classify equivalent mutants with an accuracy higher than 90%. The approach can significantly save the manual effort and time spent on identifying equivalent mutants during the process of mutation testing.
突变测试是一种有效设计测试和评估现有测试套件的测试技术。尽管多年来突变测试已经发展到适用于不同类型的软件系统和编程语言,但尚未看到突变测试的广泛工业应用。阻止开发人员和测试人员使用突变测试的一个主要原因是昂贵的计算成本。具体来说,需要手动识别等效突变是一个主要障碍,并且使突变测试非常耗时和劳动密集。本文针对这一局限性,提出了一种基于机器学习的方法,该方法设计并训练了一个抽象语法树递归神经网络模型,用于在突变测试过程中对等效突变进行自动分类。对582个突变体的初步研究表明,基于机器学习的方法可以自动分类等效突变体,准确率高于90%。该方法可以显著节省在突变检测过程中用于识别等效突变体的人工工作量和时间。
{"title":"Automatic Equivalent Mutants Classification Using Abstract Syntax Tree Neural Networks","authors":"Samuel Peacock, Lin Deng, J. Dehlinger, Suranjan Chakraborty","doi":"10.1109/ICSTW52544.2021.00016","DOIUrl":"https://doi.org/10.1109/ICSTW52544.2021.00016","url":null,"abstract":"Mutation testing is a testing technique that is effective at designing tests and evaluating an existing test suite. Even though mutation testing has been developed to be applicable and effective towards different types of software systems and programing languages for many years, wide industrial use of mutation testing has not yet been seen. One primary reason that prevents developers and testers from using mutation testing is the expensive computational cost. Specifically, the need to manually identify equivalent mutants is a major obstacle and makes mutation testing very time consuming and labor intensive. This paper addresses this limitation and proposes a machine learning-based approach that designs and trains an abstract syntax tree recurrent neural network model to automatically classify equivalent mutants during the process of mutation testing. A pilot study with 582 mutants shows that the proposed machine learning-based approach can automatically classify equivalent mutants with an accuracy higher than 90%. The approach can significantly save the manual effort and time spent on identifying equivalent mutants during the process of mutation testing.","PeriodicalId":371680,"journal":{"name":"2021 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW)","volume":"291 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2021-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116867123","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 9
Test Sequence Generation with Cayley Graphs 用Cayley图生成测试序列
Sylvain Hallé, R. Khoury
The paper presents a theoretical foundation for test sequence generation based on an input specification. The set of possible test sequences is first partitioned according to a generic “triaging” function, which can be created from a state-machine specification in various ways. The notion of coverage metric is then expressed in terms of the categories produced by this function. Many existing test generation problems, such as t-way state or transition coverage, become particular cases of this generic framework. We then present algorithms for generating sets of test sequences providing guaranteed full coverage with respect to a metric, by building and processing a special type of graph called a Cayley graph. An implementation of these concepts is then experimentally evaluated against existing techniques, and shows it provides better performance in terms of running time and test suite size.
本文为基于输入规范的测试序列生成提供了理论基础。可能的测试序列集首先根据通用的“分类”功能进行划分,该功能可以通过各种方式从状态机规范中创建。覆盖度量的概念然后用这个函数产生的类别来表示。许多现有的测试生成问题,如t-way状态或转换覆盖,都成为这个通用框架的特殊情况。然后,我们通过构建和处理一种称为Cayley图的特殊类型的图,提出了用于生成测试序列集的算法,这些测试序列集提供了关于度量的保证的完全覆盖。然后对这些概念的实现进行针对现有技术的实验评估,并显示它在运行时间和测试套件大小方面提供了更好的性能。
{"title":"Test Sequence Generation with Cayley Graphs","authors":"Sylvain Hallé, R. Khoury","doi":"10.1109/ICSTW52544.2021.00040","DOIUrl":"https://doi.org/10.1109/ICSTW52544.2021.00040","url":null,"abstract":"The paper presents a theoretical foundation for test sequence generation based on an input specification. The set of possible test sequences is first partitioned according to a generic “triaging” function, which can be created from a state-machine specification in various ways. The notion of coverage metric is then expressed in terms of the categories produced by this function. Many existing test generation problems, such as t-way state or transition coverage, become particular cases of this generic framework. We then present algorithms for generating sets of test sequences providing guaranteed full coverage with respect to a metric, by building and processing a special type of graph called a Cayley graph. An implementation of these concepts is then experimentally evaluated against existing techniques, and shows it provides better performance in terms of running time and test suite size.","PeriodicalId":371680,"journal":{"name":"2021 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW)","volume":"88 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2021-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123059241","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
Agents for Automated User Experience Testing 自动用户体验测试代理
Pedro M. Fernandes, Manuel Lopes, R. Prada
The automation of functional testing in software has allowed developers to continuously check for negative impacts on functionality throughout the iterative phases of development. This is not the case for User eXperience (UX), which has hitherto relied almost exclusively on testing with real users. User testing is a slow endeavour that can become a bottleneck for development of interactive systems. To address this problem, we here propose an agent based approach for automatic UX testing. We develop agents with basic problem solving skills and a core affect model, allowing us to model an artificial affective state as they traverse different levels of a game. Although this research is still at a primordial state, we believe the results here presented make a strong case for the use of intelligent agents endowed with affective computing models for automating UX testing.
软件中功能测试的自动化允许开发人员在开发的迭代阶段不断检查对功能的负面影响。用户体验(UX)的情况并非如此,迄今为止,它几乎完全依赖于真实用户的测试。用户测试是一项缓慢的工作,可能成为交互式系统开发的瓶颈。为了解决这个问题,我们在这里提出了一种基于代理的自动用户体验测试方法。我们开发了具有基本解决问题技能和核心情感模型的代理,使我们能够在它们穿越游戏的不同关卡时模拟人工情感状态。虽然这项研究仍处于原始状态,但我们相信这里提出的结果为使用具有情感计算模型的智能代理来自动化用户体验测试提供了强有力的案例。
{"title":"Agents for Automated User Experience Testing","authors":"Pedro M. Fernandes, Manuel Lopes, R. Prada","doi":"10.1109/ICSTW52544.2021.00049","DOIUrl":"https://doi.org/10.1109/ICSTW52544.2021.00049","url":null,"abstract":"The automation of functional testing in software has allowed developers to continuously check for negative impacts on functionality throughout the iterative phases of development. This is not the case for User eXperience (UX), which has hitherto relied almost exclusively on testing with real users. User testing is a slow endeavour that can become a bottleneck for development of interactive systems. To address this problem, we here propose an agent based approach for automatic UX testing. We develop agents with basic problem solving skills and a core affect model, allowing us to model an artificial affective state as they traverse different levels of a game. Although this research is still at a primordial state, we believe the results here presented make a strong case for the use of intelligent agents endowed with affective computing models for automating UX testing.","PeriodicalId":371680,"journal":{"name":"2021 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW)","volume":"114 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2021-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122618453","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
A Combinatorial Approach to Testing Deep Neural Network-based Autonomous Driving Systems 基于深度神经网络的自动驾驶系统组合测试方法
Jaganmohan Chandrasekaran, Yu Lei, R. Kacker, D. R. Kuhn
Recent advancements in the field of deep learning have enabled its application in Autonomous Driving Systems (ADS). A Deep Neural Network (DNN) model is often used to perform tasks such as pedestrian detection, object detection, and steering control in ADS. Unfortunately, DNN models could exhibit incorrect or unexpected behavior in real-world scenarios. There is a need to rigorously test these models with real-world driving scenarios so that safety-critical bugs can be detected before their deployment in the real world.In this paper, we propose a combinatorial approach to testing DNN models. Our approach generates test images by applying a set of combinations of some basic image transformation operations to a seed image. First, we identify a set of valid transformation operations or simply transformations. Next, we design an input parameter model based on the valid transformations and generate a t-way (t=2) combinatorial test set. Each test represents a combination of transformations, and can be used to produce a test image. We execute the test images on a DNN model and distinguish between consistent and inconsistent behavior using a relation. We conducted an experimental evaluation of our approach on three DNN models that are used in the Udacity challenge. Our results suggest that test images generated by our approach can effectively identify inconsistent behaviors and can significantly increase neuron coverage. To the best of our knowledge, our work is the first effort to use a combinatorial testing approach to generating test images based on image transformations for testing DNNs used in ADS.
深度学习领域的最新进展使其在自动驾驶系统(ADS)中的应用成为可能。在ADS中,深度神经网络(DNN)模型通常用于执行行人检测、目标检测和转向控制等任务。不幸的是,DNN模型在现实场景中可能会表现出不正确或意外的行为。有必要在真实世界的驾驶场景中严格测试这些模型,以便在将其部署到真实世界之前检测到安全关键漏洞。在本文中,我们提出了一种组合方法来测试DNN模型。我们的方法通过对种子图像应用一些基本图像转换操作的一组组合来生成测试图像。首先,我们确定一组有效的转换操作或简单的转换。接下来,我们设计了一个基于有效变换的输入参数模型,并生成了一个t-way (t=2)组合测试集。每个测试表示转换的组合,并可用于生成测试图像。我们在DNN模型上执行测试图像,并使用关系区分一致和不一致的行为。我们在Udacity挑战中使用的三个DNN模型上对我们的方法进行了实验评估。我们的结果表明,通过我们的方法生成的测试图像可以有效地识别不一致的行为,并且可以显着增加神经元覆盖率。据我们所知,我们的工作是第一次使用组合测试方法来生成基于图像变换的测试图像,用于测试ADS中使用的dnn。
{"title":"A Combinatorial Approach to Testing Deep Neural Network-based Autonomous Driving Systems","authors":"Jaganmohan Chandrasekaran, Yu Lei, R. Kacker, D. R. Kuhn","doi":"10.1109/ICSTW52544.2021.00022","DOIUrl":"https://doi.org/10.1109/ICSTW52544.2021.00022","url":null,"abstract":"Recent advancements in the field of deep learning have enabled its application in Autonomous Driving Systems (ADS). A Deep Neural Network (DNN) model is often used to perform tasks such as pedestrian detection, object detection, and steering control in ADS. Unfortunately, DNN models could exhibit incorrect or unexpected behavior in real-world scenarios. There is a need to rigorously test these models with real-world driving scenarios so that safety-critical bugs can be detected before their deployment in the real world.In this paper, we propose a combinatorial approach to testing DNN models. Our approach generates test images by applying a set of combinations of some basic image transformation operations to a seed image. First, we identify a set of valid transformation operations or simply transformations. Next, we design an input parameter model based on the valid transformations and generate a t-way (t=2) combinatorial test set. Each test represents a combination of transformations, and can be used to produce a test image. We execute the test images on a DNN model and distinguish between consistent and inconsistent behavior using a relation. We conducted an experimental evaluation of our approach on three DNN models that are used in the Udacity challenge. Our results suggest that test images generated by our approach can effectively identify inconsistent behaviors and can significantly increase neuron coverage. To the best of our knowledge, our work is the first effort to use a combinatorial testing approach to generating test images based on image transformations for testing DNNs used in ADS.","PeriodicalId":371680,"journal":{"name":"2021 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW)","volume":"31 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2021-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129704450","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 9
QRTest: Automatic Query Reformulation for Information Retrieval Based Regression Test Case Prioritization QRTest:基于回归测试用例优先级的信息检索自动查询重构
Maral Azizi
The most effective regression testing algorithms have long running times and often require dynamic or static code analysis, making them unsuitable for the modern software development environment where the rate of software delivery could be less than a minute. More recently, some researchers have developed information retrieval-based (IR-based) techniques for prioritizing tests such that the higher similar tests to the code changes have a higher likelihood of finding bugs. A vast majority of these techniques are based on standard term similarity calculation, which can be imprecise. One reason for the low accuracy of these techniques is that the original query often is short, therefore, it does not return the relevant test cases. In such cases, the query needs reformulation. The current state of research lacks methods to increase the quality of the query in the regression testing domain. Our research aims at addressing this problem and we conjecture that enhancing the quality of the queries can improve the performance of IR-based regression test case prioritization (RTP). Our empirical evaluation with six open source programs shows that our approach improves the accuracy of IR-based RTP and increases regression fault detection rate, compared to the common prioritization techniques.
最有效的回归测试算法具有较长的运行时间,并且通常需要动态或静态代码分析,这使得它们不适合软件交付速度可能少于一分钟的现代软件开发环境。最近,一些研究人员开发了基于信息检索(ir)的技术,用于对测试进行优先级排序,这样,与代码更改相似程度越高的测试发现错误的可能性就越大。这些技术中的绝大多数都是基于标准术语相似度计算,这可能是不精确的。这些技术准确性低的一个原因是原始查询通常很短,因此,它不返回相关的测试用例。在这种情况下,查询需要重新表述。目前的研究状况缺乏提高回归测试领域查询质量的方法。我们的研究旨在解决这个问题,我们推测提高查询的质量可以提高基于ir的回归测试用例优先级(RTP)的性能。我们对六个开源程序的经验评估表明,与常见的优先级技术相比,我们的方法提高了基于ir的RTP的准确性,并增加了回归故障检测率。
{"title":"QRTest: Automatic Query Reformulation for Information Retrieval Based Regression Test Case Prioritization","authors":"Maral Azizi","doi":"10.1109/ICSTW52544.2021.00050","DOIUrl":"https://doi.org/10.1109/ICSTW52544.2021.00050","url":null,"abstract":"The most effective regression testing algorithms have long running times and often require dynamic or static code analysis, making them unsuitable for the modern software development environment where the rate of software delivery could be less than a minute. More recently, some researchers have developed information retrieval-based (IR-based) techniques for prioritizing tests such that the higher similar tests to the code changes have a higher likelihood of finding bugs. A vast majority of these techniques are based on standard term similarity calculation, which can be imprecise. One reason for the low accuracy of these techniques is that the original query often is short, therefore, it does not return the relevant test cases. In such cases, the query needs reformulation. The current state of research lacks methods to increase the quality of the query in the regression testing domain. Our research aims at addressing this problem and we conjecture that enhancing the quality of the queries can improve the performance of IR-based regression test case prioritization (RTP). Our empirical evaluation with six open source programs shows that our approach improves the accuracy of IR-based RTP and increases regression fault detection rate, compared to the common prioritization techniques.","PeriodicalId":371680,"journal":{"name":"2021 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW)","volume":"21 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2021-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129137428","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
An Empirical Study of Parallelizing Test Execution Using CUDA Unified Memory and OpenMP GPU Offloading 基于CUDA统一内存和OpenMP GPU卸载的并行测试执行的实证研究
Taghreed Bagies, A. Jannesari
The execution of software testing is costly and time-consuming. To accelerate the test execution, researchers have applied several methods to run the testing in parallel. One method of parallelizing the test execution is by using a GPU to distribute test inputs among several threads running in parallel. In this paper, we investigate three programming models CUDA Unified Memory, CUDA Non-Unified Memory, and OpenMP GPU offloading to parallelize the test execution and discuss the challenges using these programming models. We use eleven benchmarks and parallelize their test suites by using these models. Our study shows some limitations (e.g. cache size, branch divergence, and load imbalance) when using GPUs to execute the testing in parallel.
软件测试的执行既昂贵又耗时。为了加速测试的执行,研究人员采用了几种方法来并行运行测试。并行化测试执行的一种方法是使用GPU在并行运行的几个线程之间分配测试输入。在本文中,我们研究了三种编程模型CUDA统一内存,CUDA非统一内存和OpenMP GPU卸载来并行化测试执行,并讨论了使用这些编程模型所面临的挑战。我们使用11个基准,并通过使用这些模型并行化它们的测试套件。当使用gpu并行执行测试时,我们的研究显示了一些限制(例如缓存大小,分支发散和负载不平衡)。
{"title":"An Empirical Study of Parallelizing Test Execution Using CUDA Unified Memory and OpenMP GPU Offloading","authors":"Taghreed Bagies, A. Jannesari","doi":"10.1109/ICSTW52544.2021.00052","DOIUrl":"https://doi.org/10.1109/ICSTW52544.2021.00052","url":null,"abstract":"The execution of software testing is costly and time-consuming. To accelerate the test execution, researchers have applied several methods to run the testing in parallel. One method of parallelizing the test execution is by using a GPU to distribute test inputs among several threads running in parallel. In this paper, we investigate three programming models CUDA Unified Memory, CUDA Non-Unified Memory, and OpenMP GPU offloading to parallelize the test execution and discuss the challenges using these programming models. We use eleven benchmarks and parallelize their test suites by using these models. Our study shows some limitations (e.g. cache size, branch divergence, and load imbalance) when using GPUs to execute the testing in parallel.","PeriodicalId":371680,"journal":{"name":"2021 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW)","volume":"75 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2021-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123417036","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
Effectively Sampling Higher Order Mutants Using Causal Effect 利用因果效应对高阶突变体进行有效采样
Saeyoon Oh, Seongmin Lee, S. Yoo
Higher Order Mutation (HOM) has been proposed to avoid equivalent mutants and improve the scalability of mutation testing, but generating useful HOMs remain an expensive search problem on its own. We propose a new approach to generate Strongly Subsuming Higher Order Mutants (SSHOM) using a recently introduced Causal Program Dependence Analysis (CPDA). CPDA itself is based on program mutation, and provides quantitative estimation of how often a change of the value of a program element will cause a value change of another program element. Our SSHOM generation approach chooses pairs of program elements using heuristics based on CPDA analysis, performs First Order Mutation to the chosen pairs, and generates an HOM by combining two FOMs.
高阶突变(high Order Mutation, HOM)被提出以避免等效突变和提高突变测试的可扩展性,但是产生有用的高阶突变本身仍然是一个昂贵的搜索问题。我们提出了一种新的方法来生成强包容高阶突变体(SSHOM)使用最近引入的因果程序依赖分析(CPDA)。CPDA本身基于程序突变,并提供了定量的估计,即一个程序元素的值的变化将导致另一个程序元素的值变化的频率。我们的SSHOM生成方法使用基于CPDA分析的启发式方法选择成对的程序元素,对所选的对进行一阶突变,并通过组合两个fom生成HOM。
{"title":"Effectively Sampling Higher Order Mutants Using Causal Effect","authors":"Saeyoon Oh, Seongmin Lee, S. Yoo","doi":"10.1109/ICSTW52544.2021.00017","DOIUrl":"https://doi.org/10.1109/ICSTW52544.2021.00017","url":null,"abstract":"Higher Order Mutation (HOM) has been proposed to avoid equivalent mutants and improve the scalability of mutation testing, but generating useful HOMs remain an expensive search problem on its own. We propose a new approach to generate Strongly Subsuming Higher Order Mutants (SSHOM) using a recently introduced Causal Program Dependence Analysis (CPDA). CPDA itself is based on program mutation, and provides quantitative estimation of how often a change of the value of a program element will cause a value change of another program element. Our SSHOM generation approach chooses pairs of program elements using heuristics based on CPDA analysis, performs First Order Mutation to the chosen pairs, and generates an HOM by combining two FOMs.","PeriodicalId":371680,"journal":{"name":"2021 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW)","volume":"71 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2021-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114580128","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 3
Software Defects Rules Discovery 软件缺陷规则发现
A. Vescan, C. Serban, G. Crişan
Developing highly qualitative software systems is important but at the same time difficult to be achieved due to a constant increase in size and complexity of the systems. Early detection of software defects becomes a must, various methods being researched. The Software Defects Rules Discovery (SDRD) approach aims to address the generation of rules for software defects. The model is based on code metric values and uses the ant colony system algorithm to discover the best solution. Performed experiments considered one theoretical example and two open-source projects with various setups, in total 22 different configurations were investigated. The obtained results indicated that from the set of considered metrics the ones that provide the best rules are: CBO (Coupling Between Objects), LOC (Lines Of Code), and NPM (Number of Private Methods).
开发高质量的软件系统很重要,但同时由于系统的规模和复杂性不断增加,很难实现。软件缺陷的早期检测成为必须,各种方法正在研究中。软件缺陷规则发现(SDRD)方法旨在解决软件缺陷规则的生成问题。该模型基于代码度量值,并使用蚁群算法来发现最优解。实验考虑了一个理论例子和两个不同设置的开源项目,总共调查了22种不同的配置。获得的结果表明,从考虑的度量集合中,提供最佳规则的度量是:CBO(对象之间的耦合)、LOC(代码行)和NPM(私有方法的数量)。
{"title":"Software Defects Rules Discovery","authors":"A. Vescan, C. Serban, G. Crişan","doi":"10.1109/ICSTW52544.2021.00028","DOIUrl":"https://doi.org/10.1109/ICSTW52544.2021.00028","url":null,"abstract":"Developing highly qualitative software systems is important but at the same time difficult to be achieved due to a constant increase in size and complexity of the systems. Early detection of software defects becomes a must, various methods being researched. The Software Defects Rules Discovery (SDRD) approach aims to address the generation of rules for software defects. The model is based on code metric values and uses the ant colony system algorithm to discover the best solution. Performed experiments considered one theoretical example and two open-source projects with various setups, in total 22 different configurations were investigated. The obtained results indicated that from the set of considered metrics the ones that provide the best rules are: CBO (Coupling Between Objects), LOC (Lines Of Code), and NPM (Number of Private Methods).","PeriodicalId":371680,"journal":{"name":"2021 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW)","volume":"26 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2021-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128298877","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
A Model-Based Test Script Generation Framework for Embedded Software 嵌入式软件基于模型的测试脚本生成框架
M. Zafar, W. Afzal, Eduard Paul Enoiu, A. Stratis, Ola Sellin
The abstract test cases generated through model-based testing (MBT) need to be concretized to make them executable on the software under test (SUT). Multiple re-searchers proposed different solutions, e.g., by utilizing adapters for concretization of abstract test cases and generation of test scripts. In this paper, we propose our Model-Based Test scrIpt GenEration fRamework (TIGER) based on GraphWalker, an open source MBT tool. The framework is capable of generating test scripts for embedded software controlling functions of a cyber physical system such as passenger trains developed at Bombardier Transportation AB. The framework follows some defined mapping rules for the concretization of abstract test cases. We have evaluated the generated test scripts using an industrial case study in terms of fault detection. We have induced faults in the model of the SUT based on three mutation operators to generate faulty test scripts. The aim of generating faulty test scripts is to produce failed test steps and to guarantee the absence of faults in the SUT. Moreover, we have also generated the test scripts using the correct version of the model and executed it to analyse the behaviour of the generated test scripts in comparison with manually-written test scripts. The results show that the test scripts generated by GW using the proposed framework are executable, provide 100% requirements coverage and can be used to uncover faults at software-in-the-loop simulation level of sub-system testing.
通过基于模型的测试(MBT)生成的抽象测试用例需要具体化,以使它们在被测软件(SUT)上可执行。许多研究者提出了不同的解决方案,例如,通过使用适配器来具体化抽象的测试用例和生成测试脚本。在本文中,我们提出了基于GraphWalker(一个开源的MBT工具)的基于模型的测试脚本生成框架(TIGER)。该框架能够为庞巴迪运输公司(Bombardier Transportation AB)开发的客运列车等网络物理系统的嵌入式软件控制功能生成测试脚本。该框架遵循一些定义的映射规则,用于将抽象测试用例具体化。我们已经使用一个工业案例研究,从故障检测的角度评估了生成的测试脚本。我们在SUT模型中基于三个突变操作符诱导了错误,从而产生了错误的测试脚本。生成错误测试脚本的目的是生成失败的测试步骤,并保证SUT中没有错误。此外,我们还使用模型的正确版本生成了测试脚本,并执行它来分析生成的测试脚本的行为,与手工编写的测试脚本进行比较。结果表明,使用所提出的框架生成的测试脚本是可执行的,提供100%的需求覆盖率,并可用于发现子系统测试在环软件仿真级别的故障。
{"title":"A Model-Based Test Script Generation Framework for Embedded Software","authors":"M. Zafar, W. Afzal, Eduard Paul Enoiu, A. Stratis, Ola Sellin","doi":"10.1109/ICSTW52544.2021.00041","DOIUrl":"https://doi.org/10.1109/ICSTW52544.2021.00041","url":null,"abstract":"The abstract test cases generated through model-based testing (MBT) need to be concretized to make them executable on the software under test (SUT). Multiple re-searchers proposed different solutions, e.g., by utilizing adapters for concretization of abstract test cases and generation of test scripts. In this paper, we propose our Model-Based Test scrIpt GenEration fRamework (TIGER) based on GraphWalker, an open source MBT tool. The framework is capable of generating test scripts for embedded software controlling functions of a cyber physical system such as passenger trains developed at Bombardier Transportation AB. The framework follows some defined mapping rules for the concretization of abstract test cases. We have evaluated the generated test scripts using an industrial case study in terms of fault detection. We have induced faults in the model of the SUT based on three mutation operators to generate faulty test scripts. The aim of generating faulty test scripts is to produce failed test steps and to guarantee the absence of faults in the SUT. Moreover, we have also generated the test scripts using the correct version of the model and executed it to analyse the behaviour of the generated test scripts in comparison with manually-written test scripts. The results show that the test scripts generated by GW using the proposed framework are executable, provide 100% requirements coverage and can be used to uncover faults at software-in-the-loop simulation level of sub-system testing.","PeriodicalId":371680,"journal":{"name":"2021 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW)","volume":"58 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2021-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129507931","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 7
MutantBench: an Equivalent Mutant Problem Comparison Framework MutantBench:一个等效的突变问题比较框架
Lars van Hijfte, Ana Oprescu
The Equivalent Mutant Problem is an ongoing research problem that led to the creation of multiple reusable non-standardized mutant datasets. However, cross-study evaluation is still tedious. To tackle this problem, we propose MutantBench, a novel open-source comparison framework that is designed with a focus on the FAIR data principles and adoptability by the community. With this, tools within the Equivalent Mutant Problem can be empirically evaluated using the same dataset which then allows for improved cross-study evaluation. We also combine existing datasets resulting in a mutant dataset containing 4400 mutants with 1416 equivalent mutants. This increases the previously largest mutant dataset by more than a thousand equivalent mutants.
等效突变问题是一个正在进行的研究问题,导致创建多个可重用的非标准化突变数据集。然而,交叉研究评估仍然是繁琐的。为了解决这个问题,我们提出了MutantBench,这是一个新颖的开源比较框架,其设计重点是FAIR数据原则和社区的可接受性。这样,等效突变问题中的工具可以使用相同的数据集进行经验性评估,从而允许改进交叉研究评估。我们还结合现有的数据集,得到一个包含4400个突变体和1416个等效突变体的突变体数据集。这将之前最大的突变数据集增加了1000多个等效突变。
{"title":"MutantBench: an Equivalent Mutant Problem Comparison Framework","authors":"Lars van Hijfte, Ana Oprescu","doi":"10.1109/ICSTW52544.2021.00015","DOIUrl":"https://doi.org/10.1109/ICSTW52544.2021.00015","url":null,"abstract":"The Equivalent Mutant Problem is an ongoing research problem that led to the creation of multiple reusable non-standardized mutant datasets. However, cross-study evaluation is still tedious. To tackle this problem, we propose MutantBench, a novel open-source comparison framework that is designed with a focus on the FAIR data principles and adoptability by the community. With this, tools within the Equivalent Mutant Problem can be empirically evaluated using the same dataset which then allows for improved cross-study evaluation. We also combine existing datasets resulting in a mutant dataset containing 4400 mutants with 1416 equivalent mutants. This increases the previously largest mutant dataset by more than a thousand equivalent mutants.","PeriodicalId":371680,"journal":{"name":"2021 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW)","volume":"38 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2021-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128711012","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 6
期刊
2021 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW)
全部 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