2

你们中是否有人有使用 Microsoft 的测试管理器或 Coded UI 测试进行真正 BDD(甚至 TDD)的经验?

我对这些工具不是很熟悉,因为我们一直在使用 SpecFlow 和 WatiN 进行 BDD。我们组织中的一个团队正在提议测试经理,但我担心他们将编写测试的能力误认为是实际执行真正的 BDD/TDD,您首先编写一个小测试,然后编写最少的代码以通过测试。

他们向我们展示的示例是在测试管理器中编写一个测试用例,启动 UI 并记录测试的作用。显然,这不是 BDD。可以用测试管理器完成真正的 BDD 吗?

任何想法表示赞赏。谢谢,威尔

哇,快一个星期了,没有任何反应。我可以认为 NOBODY 使用 TestManager 是因为它是 QA 工具而不是开发人员工具吗?

4

2 回答 2

3

测试管理器和编码 UI 测试更适合功能测试。MTM 中的测试用例不像 specflow 那样描述特性的行为。我想您在测试用例中的措辞可能会更通用一点,这样您就可以在编写代码之前编写它们,但这并不是真正由测试用例驱动的。Specflow 中的 BDD 之所以有效,是因为它为开发人员可以编写代码的每个步骤生成存根。要自动化 MTM 或 CUIT 中的任何内容,您需要等到开发人员完成后。

也就是说可以同时使用 Specflow 和 CUIT。取决于您如何定义 BDD(开发是由行为规范驱动的吗?)它仍然不是真正的 BDD,而且它绝对不是 TDD。这些仍然只是条款。它们在一起仍然有价值。如果你对此感兴趣,我写了一篇关于如何让他们一起工作的博客。 http://rburnham.wordpress.com/2011/03/15/bdd-ui-automation-with-specflow-and-coded-ui-tests/

于 2011-08-23T01:39:39.800 回答
1

我认为您不能为此使用测试管理器。正如您所指出的,它在很大程度上依赖于记录和播放类型的工作流程,这使得它变得不可能。

如果您使用 MTM 的 Coded UI 功能(这是完全自动运行带有断言的测试的唯一替代方法),您需要将测试规范“复制”到代码中(单向生成),因此很难保持更改。

您可以在任何其他 BDD 工具(例如 SpecFlow)中使用 Coded UI 作为 UI 驱动程序来驱动您的应用程序。

于 2011-07-12T13:02:16.053 回答