zoukankan      html  css  js  c++  java
  • Object Biography: Cruise Control, Elevator, and Ordered Set

     

    The Java clusters (Cruise Control, Elevator and OrdSet) presented here have been used in an empirical study addressing the impact of using state machines for testing class clusters that exhibit a state-dependent behavior in testing cost effectiveness when compared with structural testing.(就是这些数据集被用来,比较基于状态的测试跟结构化测试的花销及有效性)。

    The RTP testing technique , a common state testing strategy, was selected for state based testing. A state machine would be represented as a tree graph, called transition tree which includes (in a piecewise manner) all the transition sequences (paths) that begin and end with the same state, as well as simple paths (i.e., sequences of transitions that contain only one iteration for any loop present in the state machine) from the initial state to the final state. A transition tree is provided in the package documentation. Participants working with state machines are asked to use state invariants in their oracle assertions. After executing a transition, an oracle assertion checks the new cluster state with the expected state invariant. Participants are also asked to implement contract assertions in their oracles. Contract assertions include class invariant, and methods' preconditions and post-conditions. The different invariants and contracts are provided in OCL in the provided documentation.

    For structural testing, participants were told to attempt covering all blocs (nodes, statements) and edges in the methods' control flow graphs. By running their drivers on the instrumented code (provided along with the source code), the students identify non-covered nodes and edges. This guides students to identify new test cases to be added to their drivers to improve structural coverage. Structural testing students were advised to write oracles checking expected output/attribute values against actual ones.

    To compare the fault detection effectiveness of state based testing to structural testing, one executes the different drivers delivered by the experiment participants on a number of mutant programs (or mutants - provided in the package), that is versions of the program under test where one fault was seeded using a mutation operator. The mutants were automatically generated using MuJava .

    References

    Assessing, Comparing, and Combining State machine-Based Testing and Structural Testing: A Series of Experiments, Samar Mouchawrab, Lionel C. Briand, Yvan Labiche, and Massimiliano Di Penta. 2008. Technical Report, Carleton University, Ottawa, Ontario, Canada.pdf 

  • 相关阅读:
    matlab-图像处理-数字图像去噪
    matlab-图像处理-边缘检测算法五种
    深度学习-梯度下降原理-学习率的作用-反向传播-神经网络基础构架-正则化与激活函数
    深度学习-softmax分类器
    Jvm调优理论篇
    美团分布式定时调度框架XXL-Job基本使用
    Mongodb的基本使用及对接多数据源
    登录注册框手机号和验证码校验--前端部分
    登录接口jmeter提取token,用于后面模块验证
    jmeter之报文造数据,生成随机数字,,,生成前面固定格式在随机数字
  • 原文地址:https://www.cnblogs.com/zztian/p/2350058.html
Copyright © 2011-2022 走看看