首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 187 毫秒
1.
李志伟 《测控技术》2011,30(10):88-91
程序插装是软件测试中一种重要的白盒测试技术.介绍了程序插装的基本原理,分析了程序插装的关键要素,研究了插装测试设计的主要内容.针对常用的程序结构,如线性程序、结构化程序、面向对象程序的不同特点,提出了相应的程序插装策略和测试实现方法.在插装测试实践中,根据程序测试的规模、要求等,需要综合考虑程序插装对被测程序性能、执行...  相似文献   

2.
软件测试中代码分析与插装技术的研究   总被引:2,自引:0,他引:2       下载免费PDF全文
软件测试作为软件工程的重要组成部分对提高软件质量和可靠性起到了不可忽视的作用。软件白盒测试自动化工具WBoxTool中对标准C/C++程序进行了可视化的插装和监视,收集程序动态运行信息,并进行可靠的测试分析。该文介绍了在工具WBoxTool中使用的代码分析和插装测试技术,并给出插装测试方法的一些实例应用和分析。  相似文献   

3.
程序插装技术在软件内建自测试中的应用   总被引:5,自引:0,他引:5  
软件内建自测试(Build-In-Self-TestforSoftware)思想来自于硬件内建自测试。其中测试点设置是软件内建自测试系统的核心模块之一,主要借助程序插装技术收集动态测试信息和控制程序流程。该文具体讨论了插装库的设计、实现以及测试点植入被测程序的过程。  相似文献   

4.
软件内建自测试思想来自于硬件内建自测试。其中测试点设置是软件内建自测试系统的核心模块之一,主要借助程序插装技术收集动态测试信息和控制程序流程。具体讨论了插装库的设计、实现以及测试点个数的统计。  相似文献   

5.
软件测试中,覆盖、故障注入、性能分析等广泛使用的动态测试方法均基于程序插装技术.本文介绍一种通过分析和修改GCC编译工具,实现程序插装的新方法.该方法具有批量自动插装,插装与编译连接紧密结合,适用语言广泛等优点.最后具体讨论了如何在ARM嵌入式程序中实现程序插装,并给出修改GCC的源代码.  相似文献   

6.
软件测试是保证软件质量的重要手段,软件测试工具可以使测试过程变得自动化,覆盖分析为测试提供了可信度测量。该文研究了Java多线程动态测试中的覆盖率分析和线程分析一些度量标准,实现覆盖分析自动化和线程分析自动化的关键技术是程序插装。文章给出了实现此测试所需要的插装。  相似文献   

7.
动态分析是程序理解的重要方法,而插装技术是其中常用的关键技术之一.介绍了QESat/C 中动态分析子系统的插装策略,在其基础上提出并实现了新的插装器并改进了插装探针库的效率.实验表明,改进后的动态分析子系统具有插装速度快、动态结果文件小、动态信息合并效率高的优点.展望了现有系统如何支持新的动态分析技术,最后对全文进行了总结.  相似文献   

8.
介绍基于遗传算法的测试用例自动生成技术,研究了利用动态调试技术和静态反汇编技术计算遗传算法中适应度函数的方法,设计了基于遗传算法的黑箱测试用例自动生成模型。该模型可直接对可执行文件自动生成测试用例,避免对程序进行源代码插装,降低对程序源代码的要求,扩展了基于遗传算法的测试用例自动生成技术的应用范围。  相似文献   

9.
针对软件源代码静态检测时故障报告中误报较多问题,提出一种基于软件运行特征的故障检测方法,通过引入动态分析的方式进行故障检测;首先扩展了动态测试插装库,设计了八种常见故障模式对应的探针函数,然后在程序中搜索故障监控位置并进行故障监控探针的插装,最后在软件执行过程中分析插装消息中的运行特征从而识别故障;实验结果表明该方法能够有效检测程序故障且检测出的故障均为真实存在,弥补了静态分析误报率高的问题。  相似文献   

10.
郑晓梅 《计算机科学》2011,38(7):139-143,169
插桩技术作为一种有效理解程序动态行为的手段,已经被广泛应用于程序分析、测试和验证中。然而,由于缺少通用的插桩工具,各种具体的应用往往需要从头开发特定的插桩程序,存在着大量的重复性工作。此外,由于在原始程序中插入了大量额外代码,致使调试过程变得更加复杂和困难。针对这些问题,提出了一个基于Eclipse的通用Java代码插桩工具,即通过规则定义匹配程序的执行点,从而定制针对各种分析、测试和验证插桩需求的支持。通过对插桩代码片段的显式/隐式切换实现其可见性管理,从而确保程序的理解和调试过程不受插桩代码影响。通过使用该工具,可以更好地将插桩技术应用于Java程序开发中。  相似文献   

11.
Software testing is essential for software reliability improvement and assurance, and the processes of software testing are intrinsically dynamic. However they are seldom investigated in a mathematically rigorous manner. In this paper a theoretical study is presented to examine the dynamic behavior of software testing. More specifically, a set of simplifying assumptions is adopted to formulate and quantify the software testing processes. The mathematical formulae for the expected number of observed software failures are rigorously derived, the bounds and trends of the expected number of observed software failures are analyzed, and the variance of the number of observed software failures is examined. On the other hand, it is demonstrated that under the simplifying assumptions, the software testing processes can be treated as a linear dynamic system. This suggests that the software testing processes could be classified as linear or non-linear, and there be intrinsic link between software testing and system dynamics.  相似文献   

12.
软件测试是保证软件质量的重要手段,良好的软件自动化测试工具是开展软件测试的基础,在提出基于网络的软件测试工具的基础上,对测试工具的体系结构、功能和特点作了详细描述,最后对测试工具的优缺点进行了总结。  相似文献   

13.
嵌入式软件的动态测试   总被引:5,自引:8,他引:5  
软件测试是软件质量保证的重要手段。本文构建了基于软件测试工具Testbed/RTInsight针对PC104系统的实时嵌入式软件测试环境。以求方程根的c程序为例进行PC104系统的软件动态测试,最后给出了动态覆盖率及性能分析的实验结果。性能分析能记录分析程序中每个函数的最大运行时间,最小运行时间,总的运行时间,以及运行次数。  相似文献   

14.
Software reliability testing refers to various software testing activities that are driven to achieve a quantitative reliability goal given a priori or lead to a quantitative reliability assessment for the software under test. In this paper we develop a modeling framework for the software reliability testing process, comprising a simplifying model and a generalized model. In both models the software testing action selection process and the defect removal mechanism are explicitly described. Both the discrete-time domain and the continuous-time domain are involved. The generalized model is more accurate or realistic than the simplifying model since the former avoids the assumption that defects are equally detectable and the assumption that defects are removed upon being detected. However simulation examples show that the simplifying model really captures some of essential features of the software testing process after a short initial testing stage. The modeling framework is practically realistic, mathematically rigorous, and quantitatively precise. It demonstrates that the relationship between software testing and delivered software reliability, which was poor understood, can well be formulated and quantified. Rigorous examinations show that several common assumptions adopted in software reliability modeling, including the independence assumption, the exponentiality assumption, and the NHPP assumption, are theoretically false in general. This paper sets a good starting point to further formalize and quantify the software testing process and its relation to delivered software reliability.  相似文献   

15.
基于软件可靠性工程的测试模型   总被引:2,自引:1,他引:2  
软件可靠性工程是软件工程的一个重要分支,主要建立在操作剖面、软件可靠性模型、概率论和软件测试等理论的基础之上。该文结合软件可靠性、软件可靠性工程和软件测试的相关理论,设计了可靠性测试模型,并在市政交通一卡通工程系统中进行了实际验证。  相似文献   

16.
1 引言近几年来,随着信息技术的突飞猛进和计算理念的日益普及,软件开发作为一个产业得到了迅猛的发展,但在软件开发过程中,存在着诸多的问题。如:用户需求的频繁变更使得软件功能越来越复杂;软件功能越来越复杂又导致程序代码量增大,结构异常;而开发人员的频繁更替又使得程序维护甚是困难,等等。这些问题导致软件开发周期长,开发成本增加,产品稳定性差,质量低劣。为了能较好地解决上述问题,提高开发  相似文献   

17.
软件测试是软件工程的一个阶段,也是保障软件质量必不可少的重要一环。软件测试模型是软件测试的工作框架,用于指导软件测试过程。本文在深入研究各种综合测试技术的基础上,通过对比分析各种主流的测试模型,提出了一种新的软件测试模型,包括静态测试、动态测试,测试评估等活动,把这些活动嵌入到软件开发的整个生命周期,能更好地规划软件开发和测试等一系列活动,提高了软件生产效率及其质量,该模型还适合于迭代开发。  相似文献   

18.
静态测试作为软件测试的重要方法,是保证民用机载软件中安全关键软件质量的关键步骤。介绍静态测试的概念和方法,采用自动化分析方法,基于软件分析工具LDRA Testbed从主要静态分析、复杂度分析、静态数据流、交叉索引、信息流和数据对象分析六大部分完成软件的静态测试过程,探究其测试原理和关键标准文件的配置,生成相应的代码审查和测试度量报告,以有效提高民用机载软件质量。  相似文献   

19.
Software plays an increasingly important role in complex systems, especially for high-tech applications involved in important fields, such as transportation, financial management, communication, biomedical applications and so on. For these systems, performances such as efficient operation, fault tolerance, safety and security have to be guaranteed by the software structure, whose quality in use is assuming a growing importance from the industrial point of view. The basic problem is that the complexity of the task which software has to perform has often grown more quickly than hardware. In addition, unlike hardware, software cannot break or wear out, but can fail during its life cycle (dynamic defects) [1]. Software problems, essentially, have to be solved with quality assurance tools such as configuration management, testing procedures, quality data reporting systems and so on [2]. In this context, the paper proposes a new approach concerning the automated software testing as an aid to maximize the test plan coverage within the time available and also to increase software reliability and quality in use [3]. In this paper a method which combines accelerated automated tests for the study of software regression and memory overflow will be shown, in order to guarantee software with both a high quality level and a decrease of the testing time. The software will be tested by using test sequences reproducing the actual operating conditions and accelerated stress level. Moreover the research wishes to define some parameters of the software life and to show the generality of the proposed technique.  相似文献   

20.
软件安全性测试研究   总被引:1,自引:0,他引:1  
随着软件的广泛应用和其规模、复杂度的不断提高,软件安全性问题日益突出。软件安全性测试是保证软件安全和质量、降低软件安全风险的重要手段。阐述了软件安全性测试概念,重点研究了国内外软件安全性测试的主要方法与工具,最后以一个SQL注入实例具体说明安全性测试的实施。  相似文献   

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

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