大佬讲MBT[通俗易懂]

大佬讲MBT[通俗易懂]大佬讲MBT网址:https://www.youtube.com/watch?v=TnuiEGS6iyc获取模型:1.手工创建(Manualcreation)2.基于事件接口(Eventbasedinference)ApplyregularlanguagelearningalgorithmstotracesMinimizeover/underapproximat…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

大佬讲MBT

网址:https://www.youtube.com/watch?v=TnuiEGS6iyc

获取模型:

1.手工创建(Manual creation)

2.基于事件接口(Event based inference)

  • Apply regular language learning algorithms to traces
  • Minimize over/under approximation through multi objective optimization

2012 ICST-Finding the Optimal Balance between Over and Under Approximation of Models Inferred from Execution Logs.

Grammer learning:Algorithms to learn a regular language from its sentences(e.g.,k-tail)

两个问题:Over-approximation:behaviors that are admitted by the model,but are impossible in reality最小化模型尺寸

Under-approximation:behaviours that are possible,but are not admitted by the model 多目标优化算法

Metrics:SIZE,UNOBS,UNREC

unobserved even sequences and a small number of unrecognized traces

take all the traces that are available and to put them in parallel as an only mystic choice among them if you do that

多目标优化

select non dominated models->update paretofront->Model union/intersection

Add trace/merge states

we cycle and after a number of iterations we get minimized

Model union & intersection

Non-deterministic union/union+powerset construction/intersection

可以将模型转换为非确定有限自动机转换为确定

3.基于状态接口(Stated based inference)FSM

  • Manually define the abstraction function
  • Infer the abstraction function through clustering and multi-objective optimization

Automated Generation of stated abstraction functions using data invariant inference.AST-2013

ReAjax:a review engineering tool for Ajax Web applications.2012.

State clustering -> Invariant inference

Automated generation based on clustering & data invariant inference

Partitioning problem

Given a set of concrete states,find a partition such that the invariants obtained from each subset in the partition produce an optimal model when used as abstraction functions

减少模型尺寸,减少非确定性转换

select non dominated partitions->update pareto front->apply genetic operators

Evolving the model

1.Manual evolution

2.Inference from scratch,using the new traces

3.Automated,incremental model update

a new state and new transitions are added to the model

Revolution : Atumatic Evolution of Mined Specifications.2012

Using the model

1.test sequence generation

  • Random,depth-first,breadth first
  • Semantic interactions
  • Maximum diversity

BFS/DFS First Algorithm

the notion of semantic interactions

<text,submit >

<submit,text>

<subject,submit>

<submit,subject>

the coverage of pairs of events interact semantically

test suite diversity

Frequency based diversity is maximized

Distance metrics:minimum Euclideon distance between event execution frequencies of test cases or sum of distances from the average frequency

DIV多样性矩阵

2.test data generation

TC generator -> FSM monitor -> SUT

Transition coverage onModel is satisfied iff branch coverage on FSM Monitor is satisfied

Test generator: Any test case generator supporting branch coverage(Evosuite)

combinatorial input data generation

1554798793706

Each pairwise combination is covered by at least one test sequence

infeasible test sequences

Finite State Models express an abstraction of the semantics

  • Not all dependencies and constraints are represented
  • Test cases may violate missing dependencies and constraints

3.test case feasibility

infeasibility can cause a lot of trouble in the actual execution of tests against the application it can reduce coverage and for detection substantially and at end it invovle substantial manual effort so

Predicting feasible test sequences

In NLP,N-grams are used for word prediction

In MBT,N-grams can be used to predict the next feasible event in a test sequence.

Test case derivation:2-Grams

Interpolated N-Grams for Model Based TestingICSE

Defining the oracle

1.Manual definition

Add assertions to express:

  • Contracts(pre/post conditions,invariants)
  • Expected test case results

2.Model as oracle

TC=<add,add,empty>

  • Expected SUT state should match actual SUT state

3.Crash oracle

4.Automated oracles

anomaly detectors

图的遍历产生测试序列

N-gram based test sequence generation from finite state models.

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/203701.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 阿里笔试题(2017在线编程题)– 数串分组 –Java实现

    阿里笔试题(2017在线编程题)– 数串分组 –Java实现看到有人写了阿里的面试题,心里痒痒,好久没搞过这些了,写着实现一下题目2017年3月阿里在线编程题(实习内推)给定一串数字判断是否存在这三个元素,它们将数字串分为四个子串,其中每个子串的数字之和均相同(该3个元素不纳入计算)要求时间复杂度和空间复杂度均不能超过O(n)实现简单的用Java实现了一下,大家凑乎看,有问题请多多指出–一个半路出家的Java程序员代

    2022年5月12日
    43
  • (图文)最详细的XAMPP的安装及使用教程「建议收藏」

    (图文)最详细的XAMPP的安装及使用教程「建议收藏」XAMPP的安装及使用教程1、简介2、安装运行3、配置数据库XAMPP的安装及使用教程1、简介XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包。这个软件包原来的名字是LAMPP,但是为了避免误解,最新的几个版本就改名为XAMPP了。它可以在Windows、Linux、Solaris、MacOSX…

    2022年7月27日
    11
  • python读取excel单元格内容_python把获得的数据放在一个表格里

    python读取excel单元格内容_python把获得的数据放在一个表格里python读取Excel表格文件,例如获取这个文件的数据python读取Excel表格文件,需要如下步骤:1、安装Excel读取数据的库—–xlrd直接pipinstallxlrd安装xlrd库#引入Excel库的xlrdimportxlrd2、获取Excel文件的位置并且读取进来#导入需要读取Excel表格的路径data=xlrd.ope…

    2022年10月3日
    5
  • 网络流详解(流网图一般能够反映什么信息)

    network-flows,网络流,传说中的省选算法先推荐一个讲网络流思路的网站:https://www.cnblogs.com/ZJUT-jiangnan/p/3632525.html目的首先,明确网络流是干什么的给定指定的一个有向图,其中有两个特殊的点源S(Sources)和汇T(Sinks),每条边有指定的容量(Capacity),求满足条件的从S到T的最大流(MaxFlow)….

    2022年4月18日
    54
  • linux源码分析(二)-启动过程

    linux源码分析(二)-启动过程

    2022年3月12日
    48
  • Mac 卸载Java「建议收藏」

    Mac 卸载Java「建议收藏」Mac彻底卸载Javamac上终端安装了太多的JavaJDK版本,计划全部删除,重新安装最新版本JDK。打开终端输入以下命令://1、移除JavaAppletPlugin.plugin与JavaControlPanel.prefpanesudorm-fr/Library/Internet\Plug-Ins/JavaAppletPlugin.pluginsudorm-fr/Library/PreferencesPanes/JavaControlPanel.prefpane

    2022年5月19日
    84

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号