首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 0 毫秒
1.
Test data generation is always a key task in the field of software testing. In recent years, meta-heuristic search techniques have been considered as an effective way to assist test data generation in software structural testing. In this way, some representative test cases with high-coverage capability can be picked out from program input space. Harmony search (HS) is a recently developed algorithm and has been vigorously applied to various optimization problems. In the paper, we attempt to apply harmony search algorithm to generate test data satisfying branch coverage. At the preprocessing stage, the probes used for gathering coverage information are inserted into all branches via program static analysis. At the same time, the encoding and decoding styles between a test case and a harmony are also determined in advance. At the stage of test data searching, the subset of test data that has much stronger covering ability is stored in harmony memory. During the evolution process, one part of test suite is selected and adjusted from the harmony memory, and the other part is randomly generated from input space. Once a test suite is yielded after one-round search, its coverage can be measured by fitness function in our search algorithm. In our work, a new fitness function for branch coverage is constructed by comprehensively considering branch distance and branch weight. Here, the branch weight is determined by branch information in program, that is, the nesting level of a specific branch and the predicate types in it. Subsequently, the computed coverage metric is used for updating the test suite in the next round of searching. In order to validate the effectiveness of our proposed method, eight well-known programs are used for experimental evaluation. Experimental results show that the coverage of HS-based method is usually higher than those of other search algorithms, such as simulated annealing (SA) and genetic algorithm (GA). Meanwhile, HS demonstrates greater stability than SA and GA when varying the population size or performing repeated trials. That is to say, music-inspired HS algorithm is more suitable to generate test data for branch coverage in software structural testing.  相似文献   

2.
A new approach to software reliability modeling is discussed where variables indirectly related with software reliability are used to provide additional information for the modeling process. Previous studies, empirical and theoretical evidences, and results from experiments indicate that there is a strong relationship between software reliability and coverage of program elements required to be exercised by structural testing criteria. This paper develops a binomial type coverage-based software reliability model through the definition of a coverage-based failure rate function. The Binomial software reliability Model Based on Coverage—BMBC—is proposed and discussed. In the BMBC test data between failures is used instead of time as independent variable; the model was assessed with test data from a real application, making use of the following structural testing criteria: all-nodes, all-edges, and potential-uses—a data-flow based family of testing criteria. The results from our experiments have shown that our modeling approach has some advantages over some traditional reliability models and points to a very promising research direction in software reliability.
José Carlos MaldonadoEmail:
  相似文献   

3.
Code‐coverage‐based testing is a widely‐used testing strategy with the aim of providing a meaningful decision criterion for the adequacy of a test suite. Code‐coverage‐based testing is also mandated for the development of safety‐critical applications; for example, the DO178b document requires the application of the modified condition/decision coverage. One critical issue of code‐coverage testing is that structural code coverage criteria are typically applied to source code whereas the generated machine code may result in a different code structure because of code optimizations performed by a compiler. In this work, we present the automatic calculation of coverage profiles describing which structural code‐coverage criteria are preserved by which code optimization, independently of the concrete test suite. These coverage profiles allow to easily extend compilers with the feature of preserving any given code‐coverage criteria by enabling only those code optimizations that preserve it. Furthermore, we describe the integration of these coverage profile into the compiler GCC. With these coverage profiles, we answer the question of how much code optimization is possible without compromising the error‐detection likelihood of a given test suite. Experimental results conclude that the performance cost to achieve preservation of structural code coverage in GCC is rather low. Copyright © 2012 John Wiley & Sons, Ltd.  相似文献   

4.
System software for ubiquitous computing   总被引:12,自引:0,他引:12  
The authors identify two key characteristics of ubiquitous computing systems: physical integration and spontaneous interoperation. They examine how these properties affect the design of ubiquitous computing software and discuss future directions.  相似文献   

5.
软件MTBF计算方法研究   总被引:1,自引:0,他引:1       下载免费PDF全文
对传统的软件可靠性模型进行了分析和研究,指出了传统模型存在的一些问题,提出了将未确知理论应用于软件可靠性的研究中,该方法摆脱了对软件故障过程的各种分布假设,算法简单、稳健性好。最后通过实例对新算法和传统算法进行了比较与分析。  相似文献   

6.
7.
Abstract: We present the results of a feasibility study for the application of neural computing to the traditional problem of how to generate cost-effective, reliable implementations of complex problems—i.e. the central problem of software engineering. We treat neural computing as an innovative technology for conventional software engineering. We explore the reliability of neural networks (multilayer perceptrons trained with the backpropagation algorithm) as alternative versions in a multiversion software system. The basic idea is that versions trained differently will not exhibit common faults as independently developed, conventional versions (programmed in, for example, Modula-2) have been shown to do. The common design faults that run through independently developed versions appear to be the result of ‘difficult’ inputs which all programmers tend to misconstrue similarly. Network implementations, which are not directly designed in the conventional manner, should permit easy introduction of ‘diversity’ to combat this weakness. The initial results give credence to this possibility and have shown the way to generate substantial forced diversity within the neural computing paradigm.  相似文献   

8.
随着智能计算和大数据应用的发展,人们对GPU等加速部件的需求不断增长.计算软件栈比如CUDA、OpenCL软件栈是能充分发挥GPU硬件性能的关键.考虑计算软件栈未来在国产基础软硬件平台(比如飞腾CPU和麒麟操作系统)上的可移植性和适配性,重点研究OpenCL开源计算软件栈.测试分析OpenCL应用在不同平台上的表现,评估应用在不同OpenCL软件栈上(比如Mesa、ROCm等)进行GPU计算的表现,评估软件栈中驱动、内核等对GPU计算的影响,并且整个测试涵盖了编译、数据传输和内核执行等OpenCL计算各个阶段的时间开销.经过测试评估发现,国产平台更迫切也更适合使用GPU进行加速计算,ROCm是比较理想的OpenCL开源软件栈,有较好的性能和稳定性,并且与闭源软件栈相比存在一定的优化空间.  相似文献   

9.
10.
Coverage testing in the context of Markov chain usage models refers to coverage of a model of the specification and profile of intended use, rather than coverage of the code that implements the specification. A new measure of specification complexity based on the number of statistically typical paths through the model of the specification is derived. Formulae are presented to compute bounds on the expected number of test cases required to achieve state and arc coverage. Formulae are presented to compare different usage models with respect to the amount of testing required to achieve coverage of typical paths. Convexity properties are established for these formulae to facilitate their use in optimization calculations that are used to generate transition probabilities for the usage models.  相似文献   

11.
Achieving software quality with testing coverage measures   总被引:1,自引:0,他引:1  
Horgan  J.R. London  S. Lyu  M.R. 《Computer》1994,27(9):60-69
Coverage testing helps the tester create a thorough set of tests and gives a measure of test completeness. The concepts of coverage testing are well-described in the literature. However, there are few tools that actually implement these concepts for standard programming languages, and their realistic use on large-scale projects is rare. In this article, we describe the uses of a dataflow coverage-testing tool for C programs-called ATAC for Automatic Test Analysis for C3-in measuring, controlling,and understanding the testing process. We present case studies of two real-world software projects using ATAC. The first study involves 12 program versions developed by a university/industry fault-tolerant software project for a critical automatic-flight-control system. The second study involves a Bellcore project of 33 program modules. These studies indicate that coverage analysis of programs during testing not only gives a clear measure of testing quality but also reveals important aspects of software structure. Understanding the structure of a program, as revealed in coverage testing, can be a significant component in confident assessment of overall software quality  相似文献   

12.
Web services computing: advancing software interoperability   总被引:3,自引:0,他引:3  
  相似文献   

13.
We present a framework for testing applications for mobile computing devices. When a device is moved into and attached to a new network, the proper functioning of applications running on the device often depends on the resources and services provided locally in the current network. This framework provides an application-level emulator for mobile computing devices to solve this problem. Since the emulator is constructed as a mobile agent, it can carry applications across networks on behalf of its target device and allow the applications to connect to local servers in its current network in the same way as if they had been moved with and executed on the device itself. This paper also demonstrates the utility of this framework by describing the development of typical network-dependent applications in mobile and ubiquitous computing settings.  相似文献   

14.
随着高场磁共振的发展和应用,扩散张量磁共振成像(DTI)已经逐步成为一种重要的临床磁共振检查模式。研究了DTI数据的处理和可视化问题,介绍开发的用于DTI图像数据处理和可视化的软件——GraceDTI系统。该系统提供了从扩散张量图像的估计重建、各种导出参数图像的生成、张量场可视化和纤维跟踪与可视化在内的完整的DTI处理与分析功能。该系统可用于临床DTI的辅助诊断,还可作为DTI图像处理的研究平台。  相似文献   

15.
Integrating software engineering in introductory computing courses   总被引:1,自引:0,他引:1  
《Software, IEEE》2002,19(5):64-71
An introductory course for undergraduate computing students aims to integrate data structures and software engineering. In addition to completing assignments involving analysis, modeling, and software design, students work in teams using a 10-step process to develop an object-oriented software system.  相似文献   

16.
嵌入式软件语句覆盖率测试插桩技术   总被引:1,自引:0,他引:1  
孙红利  王忠民  王文浪 《计算机应用》2010,30(10):2738-2740
针对基于宿主机的嵌入式软件测试,提出一种单元测试中通用的语句覆盖率测试方法,通过插桩技术,采用向源代码插桩实现语句覆盖率测试。设计了测试代码的实现算法,通过测试代码可以自动完成向被测代码插桩。这些方法被成功地应用到笔者所在项目组开发的嵌入式软件仿真测试平台ARMtest上。利用这些方法,在嵌入式硬件系统未完成开发之前,可通过宿主机环境和仿真环境及时发现嵌入式软件开发初期的一些不足并加以完善。  相似文献   

17.
18.
Integrated earthquake simulation (IES) is a seamless simulation of the three earthquake processes, namely, the earthquake hazard process, the earthquake disaster process and the anti-disaster action process. High performance computing (HPC) is essential if IES, or particularly, the simulation of the earthquake disaster process is applied to an urban area in which 104∼6 structures are located. IES is enhanced with parallel computation, and its performance is examined, so that virtual earthquake disaster simulation will be made for a model of an actual city by inputting observed strong ground motion. It is shown that parallel IES has fairly good scalability even when advanced non-linear seismic structure analysis is used.  相似文献   

19.
Software engineers have tacitly assumed that there exists a link between coverage and reliability. An argument is presented which leads to an inverse logarithmic relationship which depends upon the structure of the software and on a parameter called the strength of the coverage metric. The relationship is developed by considering reliability as a function of an idealized coverage metric and then interpreting the result for a range of actual coverage metrics.  相似文献   

20.
When exercising program code with test data in an attempt to satisfy a given testing criterion, there will be a concurrent accrual of coverage in respect of other testing criteria. Knowledge of the extent of such ‘collateral coverage’ can be used to advantage both in providing better estimates of the overheads entailed by the overall testing exercise, and in helping to determine an optimal sequence for the application of a set of testing methods.In this paper, the results deriving from a set of experiments are reported. The aim of the experiments was to investigate the extent of the collateral coverage that is achieved in respect of the data-flow testing criteria when branch testing is undertaken.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号