首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到19条相似文献,搜索用时 218 毫秒
1.
汇编嵌入式软件程序流程图自动生成的研究   总被引:6,自引:0,他引:6  
程序流程图的自动生成是软件结构分析及软件测试的基础。为实现汇编嵌入式软件程序流程图的自动生成,本文首先分析汇编嵌入式软件的特征,将汇编指令划分为5种典型类型,分别定义其单链表存储结构,给出链表生成算法。在此基础上,给出汇编嵌入式软件程序流程图自动生成算法。最后,对算法的时问复杂度进行了分析。  相似文献   

2.
在软件测试中,测试用例的生成是关键。我们通过特定的模板来得到程序流程图的信息,用一系列的规则把流程图转换或二叉树表示的形式,然后遍历二叉树的各个分支,对每个分支都生成测试用例。从而达到白盒测试中具有较高故障覆盖率的路径覆盖。  相似文献   

3.
不同于传统C,C++或Java程序,BPEL(Business Process Execution Language)程序由一组活动及其之间的交互组成,同时引入了并发、序列化、XML表示等新特征,这些新特点使得定位BPEL程序的故障具有一定的挑战性。针对现有故障定位技术在有效性方面的不足,提出一种基于变异分析的BPEL程序故障定位技术,依据BPEL程序的特点及其变异算子的特点设计了一组优化策略,开发了相应的支持工具。通过一组BPEL程序实例来评估所提方法的有效性,比较了所提方法与现有BPEL程序故障定位技术的定位效果。实验结果表明,与现有方法相比,所提方法具有较高的召回率,故障定位代价基本相当,提出的优化策略进一步降低了所提方法的变异执行开销。  相似文献   

4.
程序流程图演示系统通过演示程序流程图和程序动态执行过程的对应关系来改善编程语言学习的效率,该系统使用XML作为数据存储的格式,在开发中采用MVC的设计模式。  相似文献   

5.
提出了一种基于UML序列图的面向对象类簇级测试的方法.这种方法根据序列图进行分析提取类交互信息和用户的输入数据生成测试用例,并根据序列图对代码进行插桩,构造测试模块;最后测试驱动器执行测试模块得到测试结果. 该方法也支持UML2.0 中为序列图添加的新特征.  相似文献   

6.
为了提高性能,Java内存模型允许编译器在优化过程中改变代码的执行顺序,同时该技术也会造成共享数据的更新顺序与本来的执行顺序不同。在多线程Java并发程序中,这些代码乱序执行会引起很多难以发现的错误。现有的Java程序模型检测技术并没有考虑这些顺序改变的问题。因此,本文提出了一种建立包含多线程交互及线程内代码乱序执行的完整模型,并利用模型检测工具进行穷举检测的算法。该算法可以发现原有技术无法发现的新问题,更好地检测高可靠性要求的Java并发程序。  相似文献   

7.
为了解决多重中断的执行不确定性带来的测试困难问题,在多重中断产生并发错误的特点的基础上,提出了一种多重中断程序测试框架.该测试框架通过从外部加载一组合适的中断信号序列控制中断处理程序的执行过程,迫使中断程序经历待测序列,避免了构造复杂的运行时控制环境.实验结果表明,相对于一般的中断错误分析方法,该测试框架能够对顺序程序多重中断环境下可能产生并发错误的时序环境和具体原因进行较为准确地分析.  相似文献   

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

9.
在传统调试过程中,缺陷定位通常作为程序修复的前置步骤.最近,一种新型调试框架(统一化调试)被提出.不同于传统调试中缺陷定位和程序修复的单向连接方式,统一化调试首次建立了定位与修复之间的双向连接机制,从而达到同时提升两个领域的效果.作为首个统一化调试技术, ProFL利用程序修复过程中伴随产生的大量补丁执行信息逆向地提升已有缺陷定位技术的效果.统一化调试技术不仅修复了可被修复的缺陷,而且也为不能被自动修复技术修复的缺陷提供了有效的调试线索.虽然统一化调试是一个很有前景的研究方向,但其在补丁验证过程中涉及到了大量的测试用例执行(比如百万量级的测试执行),因此时间开销问题严重.提出一种针对于统一化调试框架的加速技术(AUDE),该技术通过减少对缺陷定位效果无提升的测试执行,以提升统一化调试的效率.具体来说,AUDE首先通过马尔可夫链蒙特卡洛采样方法构建补丁执行的初始序列,随后在补丁执行过程中将已执行的补丁信息作为反馈信息,自适应性地估计每一个未执行补丁可能提供有效反馈信息的概率.在广泛使用的数据集Defects4J上对该技术进行了验证,发现AUDE在显著加速ProFL的同时,并没有降低其在缺...  相似文献   

10.
一、问题的提出使用各种计算机语言来编写程序,通常需要根据问题的算法先画出流程图,而后根据流程图来编程序.由于流程图具有简单、直观、清晰等特点,所以成为人们描述程序的重要辅助工具.与此相反,当我们分析、解剖软件时,往往需要把现有的程序反演为流程图,这是  相似文献   

11.
一种API自动化测试工具的设计与实现   总被引:5,自引:0,他引:5       下载免费PDF全文
给出一种API自动化测试工具的设计和实现方案,实现了被测API信息的自动提取、API测试数据和测试用例辅助生成以及测试执行过程驱动与监控的自动化。介绍了使用该工具对一个实际的被测程序进行测试的过程和结果。  相似文献   

12.
在面向对象程序设计中,软件测试的关键是设计程序运行状态及其使用方法。然而,状态图中的路径往往是部分重叠的。为此,研究一种改进的状态空间搜索的执行方法,该方法具有共享相同路径的特点。采用路径覆盖程序测试器模型测试提升执行方法的效率。实验结果显示,该执行方法可有效降低状态空间搜索的执行时间,提高搜索效率。  相似文献   

13.
软件执行路径的高层次可视化表示   总被引:3,自引:0,他引:3  
软件的主要特征信息,如功能性信息,常常隐藏在它的结构里面,仅仅分析软件系统的结构不足以揭示它们,只能在对软件的各条执行路径的确认过程中获得,对软件执地路长的分析是软件理解过程是一个必可少的辅助手段,程序执行路径(ExecutionPaht,EP)概念和它在程序测试,排障(纠错)和理解等方面的用途是大家所知晓的并已有记录,本文给出了一种系统性的方法,可根据从程序设计语言的说明规程产生的结构模型,自动  相似文献   

14.
程序执行时间的静态预估与可视化分析方法   总被引:3,自引:0,他引:3       下载免费PDF全文
软件时间性能分析与评估技术是实时软件开发中的一个重要课题.提出了一种基于控制流程图的程序执行时间的可视化分析框架,研究了中间代码段与源程序中语句的对应关系的自动分析、源程序语句行的CPU周期数的提取和计算方法、基于控制流程图的点到点最大时间分析算法和CPU周期的绝对时间估计方法.设计并实现了一个实用的基于控制流程图的程序执行时间静态分析与评估工具.最后,对研究工作进行了相关比较和总结.  相似文献   

15.
The author introduces PROVIDE, a source-level process visualization and debugging environment currently under development at the University of Illinois at Chicago. PROVIDE is a modern coding and debugging environment that is designed to allow the user to configure interaction at a desired level of abstraction. It emphasizes the use of interactive computer graphics for the illustration of program execution, with special attention to the requirements of program debugging. The major features of PROVIDE are presented, especially the concepts of deferred-binding program animation, which allows users to interactively change the depiction of program execution during the debugging task, and process history consistency maintenance, which guarantees a consistent (automatically updated) record of program execution in the face of changes to program instructions and run-time data values. The current PROVIDE prototype is implemented on Macintosh workstations networked to a VAX 11/780 running 4.2 BSD Unix  相似文献   

16.
基于安全协处理器保护软件可信运行框架   总被引:2,自引:0,他引:2  
软件可信运行是许多应用领域的基础,但恶意主机问题使得很难保证一个软件可信运行.在传统的基于硬件加密平台保护软件可信运行机制中,运行于安全硬件中的代码和运行于主机中的代码不在同一个执行上下文中,因此难以给用户提供完善的保护策略.为此,提出了一种新的基于安全协处理器保护软件可信运行的框架,在该框架下,软件设计者可以根据待保护软件特点和自身要求定制更加完善和灵活的保护.  相似文献   

17.
PEP (Program Editor and Processor) is an interactive programming system based on an Algol-like language. It is intended to replace BASIC as a system for interactive program development on small computers (LSI-11). The language processed by the system allows declaration of variables, constants and procedures; it has structured statements for conditional and repetitive execution of program parts. We describe design and implementation of the system and give our impressions after 1 year of experience with the system.  相似文献   

18.
Object-oriented languages are widely used in software development to help the developer in using dynamic data structures which evolve during program execution. However, the task of program comprehension and performance analysis necessitates the understanding of data structures used in a program. Particularly, in understanding which application programming interface (API) objects are used during runtime of a program. The objective of this work is to give a compact view of the complete program code information at a single glance and to provide the user with an interactive environment to explore details of a given program. This work presents a novel interactive visualization tool for collection framework usage, in a Java program, based on hierarchical treemap. A given program is instrumented during execution time and data recorded into a log file. The log file is then converted to extensible markup language (XML)-based tree format which proceeds to the visualization component. The visualization provides a global view to the usage of collection API objects at different locations during program execution. We conduct an empirical study to evaluate the impact of the proposed visualization in program comprehension. The experimental group (having the proposed tool support), on average, completes the tasks in 45% less time as compared to the control group (not provided with the proposed tool). Results show that the proposed tool enables to comprehend more information with less effort and time. We have also evaluated the performance of the proposed tool using 20 benchmark software tools. The proposed tool is anticipated to help the developer in understanding Java programs and assist in program comprehension and maintenance by identifying APIs usage and their patterns.  相似文献   

19.
With the advent of advanced program analysis and constraint solving techniques,several test generation tools use variants of symbolic execution.Symbolic techniques have been shown to be very effective in path-based test generation;however,they fail to scale to large programs due to the exponential number of paths to be explored.In this paper,we focus on tackling this path explosion problem and propose search strategies to achieve quick branch coverage under symbolic execution,while exploring only a fraction...  相似文献   

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

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