问题标签 [model-based-testing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
469 浏览

unit-testing - What is Robot Army Testing?

What is Robot Army Testing? Where is it used? How can I learn it?

0 投票
1 回答
1143 浏览

unit-testing - Rhapsody TestConductor 体验

我想知道是否有人在积极使用Rhapsody TestConductor?或者已经尝试了一段时间,但后来出于特定原因决定拒绝它?如果是这样,你的经验是什么,你在哪个领域应用它,有什么缺点,或者你为什么拒绝它?

目前,我们正在考虑将 TestConductor 作为我们选择的测试工具,因为它已经集成到 Rhapsody 中,并且想了解它对我们项目的适用性(顺便说一句,我们使用的是 C 语言的 Rhapsody 7.4)。

PS:关于基于模型的测试的好书的推荐也很受欢迎。

0 投票
4 回答
10320 浏览

python - 遍历图中所有边的算法

作为一个个人复活节项目,我正在尝试在工作中实施一些基于模型的测试。我有一个用 python 实现的图,我需要遍历所有边/执行图的所有转换,至少一次。遍历一条边两次或更多次并不重要,但我需要在同一个节点中开始和结束,并返回一系列边/过渡。

更简单的算法 > 最短序列。

我环顾四周,发现了很多算法,但我找不到适合我的一个/一个组合。如果有人能指出我正确的方向或给我一些关于如何做到这一点的提示,那就太好了。

我的图形实现如下所示:

图形

0 投票
1 回答
203 浏览

c# - Spec Explorer:错误测试

目前,我正在评估 Microsoft Research 的 Spec Explorer 2010。我有点想知道测试用例是如何生成的。

我正在玩 SE 生成的测试样本模型(累加器)。有一个方法 Accumulator.Add 将自然数 > 0 添加到成员变量中。

该模型指定:

如您所见,上述条件 (x > 0) 已在模型代码中指定。此外,我在 CORD 文件中为 Accumulator.Add 指定了可能的输入:

但是语句 Condition.IsTrue(x > 0) 强制 SpecExplorer 仅生成值 > 0 的测试。这不是我所期望的:输入参数类型是 int,因此可以将非正数传递给方法。根据规范,该方法不应该允许这样的数字。从我的角度来看,SE 应该使用非正输入生成测试,以验证算法不接受它们。

这种行为可以以某种方式建模吗?请不要将我指向 PEX 之类的解决方案,因为 PEX 专用于白盒测试。SE 更侧重于黑盒测试,根据我所学到的,黑盒测试应该使用基于我的规范的等价类。那些将是:

但 SE 从不为后一种情况生成测试用例。

有什么建议么?先感谢您。

0 投票
1 回答
178 浏览

c# - 从 Spec Explorer 导出测试脚本

有人可以解释如何在 Microsoft 的 Spec Explorer 中使用 TestAdapter 概念,以 .CSV 格式导出测试..say 吗?

我尝试浏览,但在任何地方都没有明确的答案。更喜欢在 C# 中获得解决方案

0 投票
2 回答
179 浏览

dsl - 测试领​​域特定语言

我开发了一种图形领域特定语言。我想将其用于基于模型的设计。我有许多图形组件,它们具有有关领域的抽象信息,这些组件用于实现我的算法。

谁能告诉我是否有替代传统单元测试的方法来测试这些图形组件。对这些块进行单元测试相当简单,但我觉得这对我的应用程序来说非常耗时且多余。因此,我正在寻找替代品。

任何建议将不胜感激。

谢谢

0 投票
1 回答
191 浏览

visual-studio-2012 - 未使用 Spec Explorer 2010 完成测试套件

我正在尝试 Spec Explorer,现在我遇到了我的测试套件不完整的错误。我没有收到错误或任何东西,只是我希望有 16 个测试用例,而我只有 11 个。

我遇到的问题是 Spec Explorer 2010 中的示例项目。因为我是新手,所以我在示例项目中尝试了不同的东西,所以像扩大范围和扩大双加到四加这样的东西。最后一个是我注意到我缺少一些测试用例的地方。我将其改回三重添加,以查看问题是否存在。正如我所料,我又错过了一个测试用例。只有三元组,我预计会有 8 个测试用例,但我只得到了 7 个。我在代码中唯一改变的地方是:

我也试过这样做

但同样的问题。我缺少的测试用例是 Add(1); 添加(2);添加(1)。我也尝试过只调用这个,并且它有效,那么为什么我在我的测试套件中错过了它?

我做错了什么,还是 Spec Explorer 为我过滤了一些东西?如果是 Spec Explorer,它在哪里做出这个决定?

0 投票
1 回答
63 浏览

testing - 为 MBT 动态创建 EFSM

在示例中,我试图建模模型的复杂性随着 FSM 中采取的每一步而呈指数增长。然而,FSM 增长的规则很容易用代码描述,但无法手动建模。使模型难以手动创建的原因是随着 FSM 的进展,每个节点都可能发生大量转换。状态的数量不是很多,但转换的数量是巨大的!

我一直在尝试使用 ModelJUnit,但据我所知,这个工具只支持完全预定义的模型。

所以我的问题是,是否有任何基于模型的测试工具支持为被测系统动态创建 FSM,如上所述?

0 投票
1 回答
295 浏览

c# - 如何重置 _version 列表以防止 Spec Explorer 中的重复状态

我制作了一个 Spec Explorer 项目,其中包含一个列表作为系统变量。几乎在每条规则中,此列表都适用于获得正确的结果。但是当我探索我的项目时,我会得到重复的状态。如果我比较这些状态,我发现的唯一区别是:

在谷歌搜索为什么会发生这种情况后,我发现每次更改字符串时版本都会更改。所以即使版本 23 和 25 包含相同的字符串,版本号也会让 Spec Explorer 认为它们是不同的,所以它会产生 2 个状态。有没有什么办法解决这一问题?就像重置字符串一样,或者可能有一种方法可以强制 Spec Explorer 接受这一点。

0 投票
0 回答
102 浏览

java - Model Junit: print out the DFS result out of the FSM

I am using the Model Junit Librarys DFS class to create a spanning tree out of my FSM.

This is my code:

and this is the output I get:

Unfortunately when I call dfs.isDone(); it prints out a false so I can not see the depth first search result. I don't know which function I need to apply my DFS on my FSM