首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到19条相似文献,搜索用时 203 毫秒
1.
基于程序不变量计算软件可靠性   总被引:1,自引:1,他引:0  
周远  丁佐华 《软件学报》2015,26(12):3075-3087
现有的计算软件可靠性的方法采用测试的输入/输出结果,但这些数据并不能真实地反映软件内部的真实行为,如测试中会出现假性正确的情况以及测试不能显示一个输入有多个错误的输出情况.试图通过程序不变量来计算软件的可靠性,程序不变量可以描述程序的性质.首先选取测试用例集,动态地获取程序不变量,再从这些不变量中提取失效数据,最后,基于Nelson模型计算软件的可靠性.作为实验,对西门子程序包计算软件的可靠性.采用随机、分支覆盖和分块覆盖这3种不同的测试方法得到程序不变量,据此计算程序的可靠性.为了检查结果的可行性,采用传统方法计算这些软件的可靠性.两种可靠性比较后显示:它们的差别很小,而且不依赖于对测试方法的选择.通过进一步的方差分析得知,用所提出的方法计算的可靠性比用现有的方法计算的可靠性具有更小的波动,即更平稳.因此,前者更接近系统的真实可靠性.结论说明,可用程序不变量来计算软件的可靠性.  相似文献   

2.
探讨了建立基于路径使用的Markov链模型来分析模块内部代码结构的统计测试方法的可能性。提出将统计理论用于软件的结构测试,从理论上得出软件的结构可靠性结论。提出具有有限状态、离散时间序列的Markov链作为程序的使用模型和测试模型,使用Kullback判别式作为测试链收敛到使用链的判断准则,从理论上证明了测试链到使用链收敛的必然性。理论分析和初步的实验证明该方法是可行和有前途的。  相似文献   

3.
软件测试的目标是发现尽可能多的错误,提高软件质量和可靠性,对于规模相对较小,结构相对简单的软件,采用基于路径测试的白盒测试不失为一种很好的测试方法。  相似文献   

4.
黄晨  董燕  于倩  虞砺琨 《测控技术》2017,36(1):100-103
基于目标码的测试覆盖率分析是软件测试过程的必要关键步骤,不可达分析能够保证测试的完整性和充分性.给出嵌入式软件基于覆盖率测试的分析过程,在嵌入式虚拟测试平台的基础上,对程序目标代码插桩,采用语句和分支覆盖率分析准则,将黑盒测试和白盒测试相结合,分析不可达分支语句引入机理,并通过具体的反汇编代码实例分析来验证这种测试方法的可行性和有效性.专门针对覆盖率不可达的分析可以有效验证软件功能,发现软件缺陷,进一步提升软件质量.  相似文献   

5.
软件可靠性测试的理论分析   总被引:2,自引:0,他引:2  
目前软件可靠性测试没有真正开展起来,即使重要的军用软件也没有进行软件可靠性测试。软件可靠性模型的不一致性以及软件可靠性测试时间长、费用高、资源消耗大是造成这种局面的两个主要问题。而这两个问题很大程度是由传统基于随机系统假设的软件可靠性理论导致的。因此,在该理论下对可靠性测试方法及可靠性模型的修补与改善工作很难从根本上解决问题。只有从软件可靠性理论本身入手,提出新的研究思路,才有可能摆脱目前软件可靠性测试的困境。首先介绍了软件可靠性测试的现状,然后重点对现有可靠性理论进行了分析和总结,在此基础上,提出了软件可靠性测试研究的一些新思路。  相似文献   

6.
捷联惯导的软件测试及可靠性分析   总被引:2,自引:0,他引:2  
本文介绍了捷联式惯性导航系统的软件系统的测试方法及可靠性分析方法。该方法能高效,经济地对软件部分进行测试和给出软件的可靠性度量。主要讨论了基于实时仿真的软件测试方法和可靠性模型的选择及运用。  相似文献   

7.
基于可靠性增长模型的软件可靠性增长测试充分性准则   总被引:2,自引:0,他引:2  
结合软件可靠性增长模型,扩充了基于可信度度量的软件可靠性增长测试充分性问题度量准则,提出了关于可靠性增长测试充分性问题新的度量准则:可靠性测试只有同时满足可靠性增量指标要求、可信度要求和每单位测试资源发现的故障数要求方可终止。然后,以一个真实数据集为例,应用所提出度量准则求出了测试应该停止的时间。实验证明,这样的度量准则,使得终止条件更加严格,可靠性测试更加充分,为可靠性测试充分性问题的解决提供了新的思路。  相似文献   

8.
在简要介绍软件鲁棒性基准程序测试方法的基础上,以Linux操作系统内核函数为例,通过对用于分析测试结果的维度模型进行分析,提出了软件鲁棒性的关联测试方法,并给出了相应的测试实例及测试结果,为Linux操作系统内核函数鲁棒性测试提供了更为直观、有效的方法.  相似文献   

9.
嵌入式软件在工程机械中应用越来越广泛,为保证软件产品高质量和可靠性,需进行软件测试以最小化软件缺陷;嵌入式软件的开发环境和运行环境不一致,增加了软件测试难度;文章以某型诊断仪嵌入式软件为对象,对被测件进行需求分析,基于需求分析将测试类型划分为人机界面测试、功能测试、接口测试、边界测试及性能测试;基于诊断仪软件运行环境特点,分析并搭建了模拟测试环境;然后针对各测试类型,提出对应的测试方法并进行了阐述;最后利用所述测试方法执行测试用例;通过测试结果可见,提出的测试方法能有效发现软件问题,具有一定的实用价值。  相似文献   

10.
无人机飞控软件是典型的实时嵌入式软件系统,其可靠性、安全性测试与评估是军用软件保障工作与无人机技术发展中的重点与难点。针对飞控软件的特点,介绍基于覆盖与故障注入的测试方法.分析其测试与可靠性评估中的关键技术,并简要介绍应用于测试数据分析过程的软件可靠性建模工具MEADEP的构成与建模方法。实践证明对安全关键软件严格的测试与评估可大大降低错误隐藏数,减少不必要的经济损失与灾难性事件发生。  相似文献   

11.
12.
A theory of fault-based testing   总被引:1,自引:0,他引:1  
A theory of fault-based program testing is defined and explained. Testing is fault-based when it seeks to demonstrate that prescribed faults are not in a program. It is assumed that a program can only be incorrect in a limited fashion specified by associating alternate expressions with program expressions. Classes of alternate expressions can be infinite. Substituting an alternate expression for a program expression yields an alternate program that is potentially correct. The goal of fault-based testing is to produce a test set that differentiates the program from each of its alternates. A particular form of fault-based testing based on symbolic execution is presented. In symbolic testing, the output from the system is an expression in terms of the input and the symbolic alternative. Equating this with the output from the original program yields a propagation equation whose solutions determine those alternatives which are not differentiated by this test. Since an alternative set can be infinite, it is possible that no finite test differentiates the program from all its alternates. Circumstances are described as to when this can be decided  相似文献   

13.
A family of test data adequacy criteria employing data-flow information was previously proposed, and a theoretical complexity analysis was performed. The author describes an empirical study to determine the actual cost of using these criteria. The aim is to establish the practical usefulness of these criteria in testing software and provide a basis for predicting the amount of testing needed for a given program. The first goal of the study is to confirm the belief that the family of software testing criteria considered is practical to use. An attempt is made to show that even as the program size increases, the amount of testing, expressed in terms of the number of test cases sufficient to satisfy a given criterion, remains modest. Several ways of evaluating this hypothesis are explored. The second goal is to provide the prospective user of these criteria with a way of predicting the number of test cases that will be needed to satisfy a given criterion for a given program. This provides testers with a basis for selecting the most comprehensive criterion that they can expect to satisfy. Several plausible bases for such a prediction are considered  相似文献   

14.
详细描述了一种基于工控机ASC386SX的控制继电器可靠性试验平台的软、硬件设计思想和实现方法。在硬件设计上采用了工控机结构;软件系统由两部分组成:面向操作者的人机交互界面和面向测试的核心测试控制程序。试验平台能实现多触点、多试品控制继电器的检测,其原理对一般的电磁电器元件的触点可靠性测试也有一定的借鉴价值。  相似文献   

15.
Software fails because it contains faults. If we could be certain that our attempts to fix a fault had been effective and that we had introduced no new faults, we would know that we had improved the software's reliability. Unfortunately, no single testing method can be trusted to give accurate results in every circumstance. There are at least two areas of uncertainty in testing. First, we cannot predict when a failure will occur as a result of choosing an input that cannot currently be processed correctly. Second, we do not know what effect fixing a fault will have on the software's reliability. Most of today's reliability models consider the software system to be a black box, using indirect measures of failure by making strong assumptions about the test cases. White-box testing measures, which are direct measures, are generally not used in software-reliability models. The assumption is that the more the program is covered, the more likely that the software is reliable. Hence we must develop new testing strategies. For example, we do not understand very well the notion of stress as it applies to software; what effect the dependence between versions of the same application has on reliability; the relationship between software reliability and white-box testing measures; and how to achieve the ultra-high reliability levels obtained through formal verification and fault-tolerance methods. These are just some of the areas for future research into improved testing strategies  相似文献   

16.
代码覆盖测试技术在MODE-S应答机中的应用   总被引:1,自引:0,他引:1  
代码覆盖测试技术可用于结构覆盖测试和程序复杂度分析,代码覆盖测试技术可用于测试用例设计,提高软件测试效率,指导编写高质量的程序代码,代码覆盖是软件测试的底线.代码覆盖测试技术及方法的研究,为软件覆盖测试提供了理论依据.在Mode-S应答机项目中应用TRACE覆盖测试技术,确保了产品满足适航软件标准RTCA/DO-178B LEVEL B的要求.  相似文献   

17.
End-user specification of Lyee programs is one goal envisioned by the Lyee methodology. But with any software development effort comes the possibility of faults. Thus, providing end users a means to enter their own specifications is not enough; they must also be provided with the means to find faults in their specifications, in a manner that is appropriate not only for the end user's programming environment but also for his or her background. In this paper, we present an approach to solve this problem that marries two proven technologies for end users. One methodology for enabling end users to program is the screen transition paradigm. One useful visual testing methodology is ‘What you see is what you test (WYSIWYT)’. In this paper, we show that WYSIWYT test adequacy criteria can be used with the screen transition paradigm, and present a systematic translation from this paradigm to the formal model underlying WYSIWYT.  相似文献   

18.
A wide range of commercial consumer devices such as mobile phones and smart televisions rely on embedded systems software to provide their functionality. Testing is one of the most commonly used methods for validating this software, and improved testing approaches could increase these devices’ dependability. In this article we present an approach for performing such testing. Our approach is composed of two techniques. The first technique involves the selection of test data; it utilizes test adequacy criteria that rely on dataflow analysis to distinguish points of interaction between specific layers in embedded systems and between individual software components within those layers, while also tracking interactions between tasks. The second technique involves the observation of failures: it utilizes a family of test oracles that rely on instrumentation to record various aspects of a system's execution behavior, and compare observed behavior to certain intended system properties that can be derived through program analysis. Empirical studies of our approach show that our adequacy criteria can be effective at guiding the creation of test cases that detect faults, and our oracles can help expose faults that cannot easily be found using typical output-based oracles. Moreover, the use of our criteria accentuates the fault-detection effectiveness of our oracles.  相似文献   

19.
介绍快速开发自动测试系统的简化编程自动测试系统的设计方法;开发简化编程自动测试系统要实现测试系统软件与被测设备无关性;测试软件分为两部分:测控程序和测试模型;用测试软件检测某个被测设备时,由测控程序调用测试模型,对测试模型进行解释。测试模型和测控程序是相互独立的,测控程序负责测试模型的建立与解释,这就实现了测试系统软件与被测设备无关性,实现了测试模型的免编程开发;这样,在开发测试程序时,用户不需要编写任何软件,只需要根据测控程序提供的测试模型管理向导开发所需的测试模型;用免编程自动测试系统开发自动测试系统具有速度快、性价比高等特点,且开发的自动测试系统测试速度快、运行可靠、扩展性好。  相似文献   

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

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