首页 | 官方网站   微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 31 毫秒
1.
由于面向对象程序具有多态性等复杂特性,在软件单元测试中仅凭静态分析难以判断指针和引用指向对象的具体类型,为了解决这一问题,对类的抽象内存模型进行研究,并提出类的操作语义模拟算法;在路径分析时,通过构建和更新抽象内存模型,从而对变量所属类的范围进行限定;对于单元测试,对基于输入域的随机测试进行优化,提出基于路径的随机测试方法,得到输入变量的类型集合;实验表明,类的抽象内存模型结合操作语义模拟算法能够有效提取出路径中类相关的约束,基于路径的随机测试方法比起基于输入域的随机测试方法能够明显提高测试效率。  相似文献   

2.
We propose an analysis of numerical integration based on sampling theory, whereby the integration error caused by aliasing is suppressed by pre‐filtering. We derive a pre‐filter for evaluating the illumination integral yielding filtered importance sampling, a simple GPU‐based rendering algorithm for image‐based lighting. Furthermore, we extend the algorithm with real‐time visibility computation. Free from any pre‐computation, the algorithm supports fully dynamic scenes and, above all, is simple to implement.  相似文献   

3.
An investigation of graph-based class integration test order strategies   总被引:1,自引:0,他引:1  
The issue of ordering class integration in the context of integration testing has been discussed by a number of researchers. More specifically, strategies have been proposed to generate a test order while minimizing stubbing. Recent papers have addressed the problem of deriving an integration order in the presence of dependency cycles in the class diagram. Such dependencies represent a practical problem as they make any topological ordering of classes impossible. Three main approaches, aimed at "breaking" cycles, have been proposed. The first one was proposed by Tai and Daniels (1999) and is based on assigning a higher-level order according to aggregation and inheritance relationships and a lower-level order according to associations. The second one was proposed by Le Traon et al. (2000) and is based on identifying strongly connected components in the dependency graph. The third one was proposed by Briand et al. (2000); it combines some of the principles of the two previous approaches and addresses some of their shortcomings (e.g., the first approach may result into unnecessary stubbing whereas the second may lead to breaking cycles by "removing" aggregation or inheritance dependencies, thus leading to complex stubbing). This paper reviews these strategies (principles are described, advantages and drawbacks are precisely investigated) and provides both analytical and empirical comparisons based on five case studies.  相似文献   

4.
在面向对象程序的测试中,合适的测试顺序能够极大地节省测试成本.目前已有的相关工作大多忽略了包括Java在内的主流面向对象程序语言的一个重要特征--动态绑定.考察了动态绑定在对于选择测试顺序的影响,提出了一种新的测试顺序的选择策略,并给出了相应的选择算法,实现了减少测试桩数目,降低测试成本的目标.  相似文献   

5.
静态回归测试用例集构建策略是依据程序间的调用关联,分析因代码更改而受影响的模块,进而构建回归测试用例集,该方法并没有考虑程序间的隐式数据关联,对同一数据库操作或者对公共对象数据操作的方法间存在隐式数据关联。针对代码更改不仅会对调用关联的方法产生影响,也会对隐式数据关联的方法产生影响进行研究,提出了一种多重关联的静态回归测试用例集构建策略,通过构建多重方法关联图分析方法间调用关联和隐式数据关联,进而依据关联关系构建因代码更改而受影响的回归测试用例集。通过对4个开源项目进行实验评估,实验结果表明本文提出的静态策略提高了回归测试的安全性和精确性。  相似文献   

6.
Abstract— The reduction of a structural pattern at specific gray levels caused by digital halftone methods is the subject of this paper. This problem is more severe in some flat‐panel displays because their black levels typically are brighter than other display blocks. A patented halftone algorithm, confined error diffusion (CED), that confines the error‐carry within the dither mask is described and extended. First, the CED algorithm that dynamically applies random error diffusion or the ordered‐dither method, depending upon image content, is described in detail. Finally, we propose an advanced CED algorithm for improving the gradation characteristics of the CED algorithm. The performance of the proposed algorithms is compared to the experimental results for natural test images. In order to verify the halftone quality, a structural similarity measure for color images by taking into account the interrelation between color channels is proposed, and the results based on the proposed method, the color similarity measure method, is given.  相似文献   

7.
This paper considers the problem of test data generation for the core-level verification of microprocessors; namely, the problem of constructing a test program on the basis of its abstract form (test template). To solve this problem, we propose an algorithm reducing it to a problem of resolving constraints. This paper addresses the verification of memory-handling instructions (taking into account such microprocessor features as caching and address translation).  相似文献   

8.
One of the characteristics of the increasingly widespread use of object‐oriented libraries and the resulting intensive use of inheritance is the proliferation of dependencies on abstract classes. Since abstract classes cannot be instantiated, they cannot be tested in isolation using standard execution‐based testing strategies. A standard approach to testing abstract classes is to instantiate a concrete descendant class and test the features that are inherited. This paper presents a structured approach that supports the testing of features in abstract classes, paying particular attention to ensuring that the features tested are those defined in the abstract class. Two empirical studies are performed on a suite of large Java programs and the results presented. The first study analyses the role of abstract classes from a testing perspective. The second study investigates the impact of the testing strategy on the programs in this suite to demonstrate its feasibility and to comment on the pragmatics of its use. Copyright © 2010 John Wiley & Sons, Ltd.  相似文献   

9.
集成测试是软件测试过程中不可缺少的步骤, 针对在集成测试中如何对系统中的类合理排序的问题, 国内外研究者提出了多种生成类集成测试序列的方法, 然而他们大多没有将测试桩复杂度作为评估测试代价的指标.针对该问题, 提出面向类集成测试序列生成的强化学习研究方法, 以总体测试桩复杂度为评价测试代价的指标, 生成测试代价尽可能低...  相似文献   

10.
提出了通用测试系统硬件集成的策略问题,给出了系统功能分层描述,建立了数学模型,定义了性能评价指标,并对指标进行了求解,基于此构建了基于遗传算法的硬件集成策略,给出了算法步骤,并以某测试系统的组建为例,对提出的硬件集成策略和算法的可行性进行了验证,从结果可以看出提出的通用测试系统硬件集成策略具有较好的适用性、合理性和可行性。  相似文献   

11.
In behavior‐based robots, planning is necessary to elaborate abstract plans that resolve complex navigational tasks. Usually maps of the environment are used to plan the robot motion and to resolve the navigational tasks. Two types of maps have been mainly used: metric and topological maps. Both types present advantages and weakness so that several integration approaches have been proposed in literature. However, in many approaches the integration is conducted to build a global representation model, and the planning and navigational techniques have not been fitted to profit from both kinds of information. We propose the integration of topological and metric models into a hybrid deliberative‐reactive architecture through a path planning algorithm based on A* and a hierarchical map with two levels of abstraction. The hierarchical map contains the required information to take advantage of both kinds of modeling. On one hand, the topological model is based on a fuzzy perceptual model that allows the robot to classify the environment in distinguished places, and on the other hand, the metric map is built using regions of possibility with the shape of fuzzy segments, which are used later to build fuzzy grid‐based maps. The approach allows the robot to decide on the use of the most appropriate model to navigate the world depending on minimum‐cost and safety criteria. Experiments in simulation and in a real office‐like environment are shown for validating the proposed approach integrated into the navigational architecture. © 2002 Wiley Periodicals, Inc.  相似文献   

12.
Buffer overflows cause serious problems in various categories of software systems. In critical systems, such as health-care, nuclear or aerospace software applications, a buffer overflow may cause severe threats to humans or severe economic losses. If they occur in network or security applications, they can be exploited to gain administrator privileges, perform system attacks, access unauthorized data, or misuse the system. This paper proposes a combination of genetic algorithms, linear programming, evolutionary testing, and static and dynamic information to detect buffer overflows. The newly proposed test input generation process avoids the need for human intervention to define and tune genetic algorithm weights and therefore it becomes completely automated. The process that guides the genetic search towards the detection of buffer overflow relies on a fitness function that takes into account static and dynamic information. Reported results of our case studies, consisting of two sets of open-source programs show that the new process and fitness function outperform previously published approaches.  相似文献   

13.
In a distributed stream processing system, streaming data are continuously disseminated from the sources to the distributed processing servers. To enhance the dissemination efficiency, these servers are typically organized into one or more dissemination trees. In this paper, we focus on the problem of constructing dissemination trees to minimize the average loss of fidelity of the system. We observe that existing heuristic-based approaches can only explore a limited solution space and hence may lead to sub-optimal solutions. On the contrary, we propose an adaptive and cost-based approach. Our cost model takes into account both the processing cost and the communication cost. Furthermore, as a distributed stream processing system is vulnerable to inaccurate statistics, runtime fluctuations of data characteristics, server workloads, and network conditions, we have designed our scheme to be adaptive to these situations: an operational dissemination tree may be incrementally transformed to a more cost-effective one. Our adaptive strategy employs distributed decisions made by the distributed servers independently based on localized statistics collected by each server at runtime. For a relatively static environment, we also propose two static tree construction algorithms relying on apriori system statistics. These static trees can also be used as initial trees in a dynamic environment. We apply our schemes to both single- and multi-object dissemination. Our extensive performance study shows that the adaptive mechanisms are effective in a dynamic context and the proposed static tree construction algorithms perform close to optimal in a static environment.  相似文献   

14.
This paper is concerned with a class of pursuit‐evasion game problems amidst stationary and moving obstacles in a bounded environment. We concentrate on evader's strategy taking into account the following challenges: (i) pursuer and evader are nonholonomic wheeled mobile robots and the evader is slower than the pursuer; (ii) pursuer follows a proportional navigation law; and (iii) geometry of the environment is not known to the players, a priori. We propose an efficient evader‐centric anticipated velocity based guidance strategy. Pursuer's trajectory is anticipated at each step by the evader using quadratic polynomial interpolation. The aim of the evader is to escape interception with the pursuer for maximum possible time. To deal with static obstacles, a technique based on a well‐known tangent bug algorithm is presented. While dealing with dynamic obstacles, a recently introduced reciprocal orientation method is employed to avoid collision in situations when the dynamic obstacle also cooperates in the process. In case dynamic obstacles do not participate in the process of collision avoidance, a well‐known velocity obstacle method is employed for planning safe collision‐free paths. Efficiency of the proposed algorithms is analyzed with respect to the interception time and the distance traveled by the players. Copyright © 2014 John Wiley & Sons, Ltd.  相似文献   

15.
最大熵分割算法对于目标与背景之间界限模糊的图像分割效果较好,但该算法对图像边缘的处理能力较差。最大类间方差分割算法对图像边缘的识别能力较强,但该算法对于目标和背景之间界限模糊的图像分割效果不好。针对上述问题,提出了一种基于最大类间方差的最大熵图像分割算法,该算法既能很好地对目标与背景之间界限模糊的图像进行分割,又能有效地识别图像的边缘。实验结果表明,本文所提算法对目标与背景之间界限模糊的图像的分割效果以及对图像边缘的识别能力均优于传统的最大类间方差算法和最大熵算法,且具有更好的有效性和鲁棒性。  相似文献   

16.
Hakjoo Oh  Kwangkeun Yi 《Software》2010,40(8):585-603
We present a simple algorithmic extension of the approximate call‐strings approach to mitigate substantial performance degradation caused by spurious interprocedural cycles. Spurious interprocedural cycles are, in a realistic setting, the key reasons for why approximate call‐return semantics in both context‐sensitive and ‐insensitive static analysis can make the analysis much slower than expected. In the approximate call‐strings‐based context‐sensitive static analysis, because the number of distinguished contexts is finite, multiple call‐contexts are inevitably joined at the entry of a procedure and the output at the exit is propagated to multiple return‐sites. We found that these multiple returns frequently create a single large cycle (we call it ‘butterfly cycle’) covering almost all parts of the program and such a spurious cycle makes analyses very slow and inaccurate. Our simple algorithmic technique (within the fixpoint iteration algorithm) identifies and prunes these spurious interprocedural flows. The technique's effectiveness is proven by experiments with a realistic C analyzer to reduce the analysis time by 7–96%. As the technique is algorithmic, it can be easily applicable to existing analyses without changing the underlying abstract semantics, it is orthogonal to the underlying abstract semantics' context‐sensitivity, and its correctness is obvious. Copyright © 2010 John Wiley & Sons, Ltd.  相似文献   

17.
In this paper, we propose an unsupervised neural network allowing a robot to learn sensory-motor associations with a delayed reward. The robot task is to learn the “meaning” of pictograms in order to “survive” in a maze. First, we introduce a new neural conditioning rule probabilistic conditioning rule (PCR) allowing us to test hypotheses (associations between visual categories and movements) during a given time span. Second, we describe a real maze experiment with our mobile robot. We propose a neural architecture overcoming the difficulty to build visual categories dynamically while associating them to movements. Third, we propose to use our algorithm on a simulation in order to test it exhaustively. We give the results for different kinds of mazes and we compare our system to an adapted version of the Q-learning algorithm. Finally, we conclude by showing the limitations of approaches that do not take into account the intrinsic complexity of a reasoning based on image recognition.  相似文献   

18.
DSP功能测试方法研究   总被引:1,自引:0,他引:1  
随着数字信号处理器(DSP)性能和集成度迅速地提高,DSP产品得到了日趋广泛的应用。文章首先介绍了DSP的基本结构,其次详细分析了DSP功能测试的方法,特别是研究了由测试系统模拟外部程序存储器加载程序的并行测试算法,最后讨论了为使用相同指令集的DSP自动生成测试图形的算法。上述算法具有直观、编程灵活、开发周期短的特点。  相似文献   

19.
Real-time databases are poised to be an important component of complex embedded real-time systems. In real-time databases (as opposed to real-time systems), transactions must satisfy the ACID properties in addition to satisfying the timing constraints specified for each transaction (or task). Although several approaches have been proposed to combine real-time scheduling and database concurrency control methods, to the best of our knowledge, none of them provide a framework for taking into account the dynamic cost associated with aborts, rollbacks, and restarts of transactions. In this paper, we propose a framework in which both static and dynamic costs of transactions can be taken into account. Specifically, we present: i) a method for pre-analyzing transactions based on the notion of branch-points for data accessed up to a branch point and predicting expected data access to be incurred for completing the transaction, ii) a formulation of cost that includes static and dynamic factors for prioritizing transactions, iii) a scheduling algorithm which uses the above two, and iv) simulation of the algorithm for several operating conditions and workload. Our dynamic priority assignment policy (termed the cost conscious approach or CCA) adapts well to fluctuations in the system load without causing excessive numbers of transaction restarts. Our simulations indicate that i) CCA performs better than the EDF-HP algorithm for both soft and firm deadlines, ii) CCA is more fair than EDF-HP, iii) CCA is better than EDF-CR for soft deadline, even though CCA requires and uses less information, and iv) CCA is especially good for disk-resident data.  相似文献   

20.
The authors survey high-level approaches to test generation for VLSI circuits, which can significantly reduce test generation time while still providing good fault coverage. High-level approaches view the circuit with less structural detail, that is, from a more abstract viewpoint and often hierarchically. The authors first review some basic circuit and fault models and the two most widely known test-generation algorithms as a basis for comparison between high-level and low-level techniques. The authors then examine the more important high-level approaches, which fall into two broad classes, namely algorithmic and heuristic  相似文献   

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

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

京公网安备 11010802026262号