selenium - 使用 TFS 以正确的顺序运行自动化测试时出现问题
问题描述
我正在使用 TFS Web 门户创建用于自动化测试的测试套件,并且从 Visual Studio 测试项目中,我可以将任何 [测试方法] 与任何 TFS 测试用例相关联。然后可以从 TFS 运行测试。
正如您在下面看到的,我的测试套件有一些设置测试,然后是一些实际测试。我有一个测试方法,它设置一个文件夹,我的测试套件将在其中裁剪它的屏幕截图,然后启动我要测试的应用程序并登录。然后我进行测试,将屏幕截图前缀设置为需求编号 1581(因为这是测试的需求),然后对需求 2062 和 2061 重复此操作。
问题是这些测试以错误的顺序运行。
我知道有序测试,我知道我可以简单地将所有这些放在有序测试中并运行它。事实上,我使用了有序测试,我自己和团队中的其他 1 名测试人员都安装了 Visual Studio 并具备使用有序测试的技能。团队其他成员(手动测试人员和经理)的要求是我需要拆分测试(如下所示)。
当我在下面创建测试套件时,我认为一切正常。我可以运行前 5 个测试。受此启发,我在我的 9 个测试套件中添加了最后 4 个测试。但这一切都开始失败了!
现在,当我运行所有 9 个测试时,第 4 个测试(运行良好)失败了,因为它以某种方式被 TFS 以错误的顺序运行。我知道这一点是因为我的测试都创建了 1 个或多个屏幕截图。这些屏幕截图有效,但创建顺序错误。
我知道很多人会告诉我使用有序测试,他们会告诉我每个测试都应该是自包含的。我偏离这一点的原因是我有 4000 个测试来验证 3000 个需求。如果我想测试成员记录是否可以具有属性 X、Y 和 Z,那么这是 3 个要求。我想要 1 个设置测试(启动应用程序、登录、创建基本记录)。然后我想要 1 个 X 有效的测试,1 个 Y 有效的测试和 1 个 Z 有效的测试。我有 3 个要求,所以我至少需要 3 个测试。如果每个测试都重复所有设置(启动应用程序,登录并创建基本记录),那么我的测试套件将永远运行并且很快就会变得太慢。
我还希望将它们分开,因为没有编程技能和 Visual Studio 经验的手动测试人员会查看我的测试套件,找到失败的测试并手动重新测试。如果我的测试套件在 TFS 中都有 1 个测试,他们将不知道出了什么问题。如果我在一个测试套件中有 9 个测试并且 1 个失败,他们就会知道要手动重新测试什么。
最后,我看到了与 Microsoft 测试管理器相关的类似问题。这不是一个重复的问题,不再支持 MTM,所以我正在使用 Web Portal(如图所示)。我也看到了这个与 Visual Studio 2010 等有关的问题。我使用的是 Visual Studio 2019,所以它不是重复的,VS 发生了很大变化。
解决方案
推荐阅读
- next.js - Tailwind CSS 在构建后未应用样式
- python - 试图用 tkinter 观察两个 IntVar 并选择最小的数字
- flutter - BuiltValueGenerator - 一个包含大量代码的类
- c - 在 cuda c 中使用矩阵加法,代码执行,但是在使用 nvprof 对其进行分析时。它说没有内核被分析
- python - Python:自动调用所有继承的类
- excel - 如何使用vba将日期从一个工作簿复制到另一个工作簿?
- javascript - 从1填充数字到n,快速算法
- r - 将axes.offset = FALSE与survminer包一起使用时如何对齐我的风险表?
- php - 仅在使用 Elementor 的 AJAX 小部件上隐藏缺货 WooCommerce 产品
- python - 如何从 keras 模型中获取输出节点名称?