gpt4 book ai didi

visual-studio-2012 - 是否可以在 Visual Studios 2012 测试资源管理器中对 Specflow 测试进行排序?

转载 作者:行者123 更新时间:2023-12-04 02:44:37 25 4
gpt4 key购买 nike

在 Visual Studio 2012 的测试资源管理器中似乎没有针对 Specflow 功能的排序功能。有没有人知道/知道一种解决方法来确保测试以特定顺序运行(因为测试可能会受到结果的影响/在(a)之前的测试中完成的操作)?

Visual Studio 2012 中可用的“有序测试”功能似乎不适用于 Specflow 功能。您可以创建的 .orderedtest 文件不会将 SpecFlow 功能识别为可用测试。

最佳答案

之前有过这个问题,个人认为Ordered unit tests是code smell。从理论上讲,我们的每个测试都不应该依赖于在其执行之外创建的任何状态。

这样考虑,如果我们正在编写一个带有模拟依赖项的普通单元测试,那么在调用 SUT 之前,我们需要的一切都在我们的测试方法中创建。当我们增加测试规模时,我们仍然需要确保在调用我们更大的 SUT 之前一切都处于正确的状态。然后,对于集成或系统测试,将创建测试包并准备好输入,清理数据库以准备好接受新输入,甚至手动测试人员也已获得测试内容的脚本。

当我们考虑 SpecFlow 级别的测试时,我们需要同样的东西,GivenWhen 之前,我们仍然需要准备好一切可以调用。

但是我个人有一些集成级别的场景,阅读,

Given ...
And ...
When ...
Then ...
When ...
Then ...
Given ...
When ...
Then ...
And ...

在某些方面,这些与您订购的测试是同义词,即最终的 When要求所有以前的 When已正确完成。因此,这违反了单元测试的几个原则,包括每个测试都应该只因一个原因而失败,但是我个人对此表示满意,因为我的下级单元测试句柄提供代码问题的指标。

关于visual-studio-2012 - 是否可以在 Visual Studios 2012 测试资源管理器中对 Specflow 测试进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19095914/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com