大佬讲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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 魔兽世界私服搭建架设教程「建议收藏」

    魔兽世界私服搭建架设教程「建议收藏」https://github.com/TrinityCore/TrinityCore服务端源码,而且github上有详细教程,这里只记录关键WindowsRequirementsProcessorwithSSE2supportBoost1.63(根据教程实际下载的是1.66)MySQL≥5.1.0uptoMySQL5.7.xOpenSSL≥1.0.x(…

    2022年10月5日
  • jlink 与 swd 接口定义

    jlink 与 swd 接口定义1.JLink介绍J-Link是SEGGER公司为支持仿真ARM内核推出的JTAG仿真器。J-Link支持所有基于ARM架构的处理器或微控制器配合IAREWAR,ADS,KEIL等集成开发环境进行开发过程中进行单步控制执行调试。J-Link除了可以配合集成开发环境进行调试程序,进行程序下载之外,J-Link还可以单独使用。比如在产品的生产环节中,就可以单独使用J-Link进行固件的下载。JLink,SWD接口定义缺口向左,左边为JLink接口定义,右边为SWD接口定义JTAG

    2022年4月25日
  • JavaScript基础知识全总结「建议收藏」

    JavaScript基础知识全总结「建议收藏」JavaScript基础浏览器说明浏览器是指可以显示网页服务器或者文件系统的HTML文件内容,并让用户与这些文件交互的一种软件。通俗的讲:可以显示页面的一个软件,国内网民计算机上常见的网页浏览器有,QQ浏览器、InternetExplorer、Firefox、Safari,Opera、GoogleChrome、百度浏览器、搜狗浏览器、猎豹浏览器、360浏览器、UC浏览器、傲游浏览器、世…

    2022年7月17日
  • staruml使用方法(对讲机按键使用说明)

    综述StarUML是一种生成类图和其他类型的统一建模语言(UML)图表的工具。这是一个用Java语言描述的创建类图的简明手册。StarUML(简称SU),是一种创建UML类图,并能够自动生成Java的“stubcode”的工具。SU也可以做JAVA逆向工程,以产生相应的UML图表。在本教程中,我们将使用SU设计一个pizza饼。执行下列步骤,可以创建如下面所示的UML图。SU可以生…

    2022年4月12日
  • header(‘Content-type:text/html;charset = utf-8’);出现中文乱码

    header(‘Content-type:text/html;charset = utf-8’);出现中文乱码header(‘Content-type:text/html;charset=utf-8’);”=”两旁不能留空格,必须紧密连写,否则出现乱码;如果不行,再用Editplus重新保存为UTF8编码,本身Editplus就有一个设置编码的,不过我这是英文版本的,点击菜单栏的第五项,有一个Document的选项,然后单击它,在下拉菜单里,有一项FileEncoding,再进

    2022年7月16日
  • 谷歌浏览器驱动国内镜像下载地址[通俗易懂]

    谷歌浏览器驱动国内镜像下载地址[通俗易懂]谷歌驱动(driverchrome.exe)国内镜像下载地址:http://npm.taobao.org/mirrors/chromedriver/Windows、Linux、MAC系统均可下载下载解压,放到C:\ProgramFiles(x86)\Google\Chrome\Application(自己的谷歌浏览器安装路径)下即可…

    2022年6月7日

发表回复

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

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