量角器 - 如何为不同的测试重复使用相同的规范文件
Protractor - how to reuse the same spec file for different tests
在我的 Protractor conf.js
文件中,我想多次 re-use 相同的规格文件;然而,这似乎是不可能的。
一些背景:
我们正在从 JSON 文件中读取测试用例,启动报告,然后测试网格结果和各种 DOM 元素。
所有报告的格式都相同。主要区别在于报告标题、数据栏目、实际数据结果等
所以在我的 conf.js
文件中,理想情况下我想 re-use 多次相同的规范文件 - 但我的理解是我不能这样做。
比如我的spec数组:
specs: [
'spec/report1-spec.js',
'spec/report-grid-details-spec.js',
'spec/report2-spec.js',
'spec/report-grid-details-spec.js',
'spec/report3-spec.js',
'spec/report-grid-details-spec.js',
]
我读过这个 post (http://ramt.in/how-to-run-identical-jasmine-specs-multiple-times-with-protractor/ ),您可以在其中将规范文件移动到 node module
,但是 1)
我不想移动所有规范文件都在那里,而且 2)
即使我将一个规范文件移动到模块导出文件中,它也不起作用。
如果我做不到,那么我将把我的 report-grid-details-spec.js
代码移动到一个通用的 page object
文件中,并在需要时调用它。
只是想知道是否有人找到解决方案来解决这种需要在一个 conf.js
配置中多次 re-use spec 文件的问题。
谢谢,
鲍勃
If I can't do it, then I'll just move my report-grid-details-spec.js code into a common page object file and call it whenever it's needed.
这可能是解决问题的最简单方法。不过,我喜欢将规范放入模块的想法 - 它对整体可重用性有好处。
问题是,jasmine
不允许在单个测试 运行 中执行相同的测试。而且,据我所知,没有简单的方法可以改变这种行为。
可能的解决方法之一是完全重新启动量角器,因此重新创建 jasmine 测试环境,以便下一个 report-grid-details-spec.js
将 运行 在新的 jasmine 环境中 - 这是 protractor-flake
project uses to retry the failing tests (it basically restarts protractor
through command-line passing the failing specs as a comma-separated list to the specs
argument, source).
在我的 Protractor conf.js
文件中,我想多次 re-use 相同的规格文件;然而,这似乎是不可能的。
一些背景:
我们正在从 JSON 文件中读取测试用例,启动报告,然后测试网格结果和各种 DOM 元素。
所有报告的格式都相同。主要区别在于报告标题、数据栏目、实际数据结果等
所以在我的 conf.js
文件中,理想情况下我想 re-use 多次相同的规范文件 - 但我的理解是我不能这样做。
比如我的spec数组:
specs: [
'spec/report1-spec.js',
'spec/report-grid-details-spec.js',
'spec/report2-spec.js',
'spec/report-grid-details-spec.js',
'spec/report3-spec.js',
'spec/report-grid-details-spec.js',
]
我读过这个 post (http://ramt.in/how-to-run-identical-jasmine-specs-multiple-times-with-protractor/ ),您可以在其中将规范文件移动到 node module
,但是 1)
我不想移动所有规范文件都在那里,而且 2)
即使我将一个规范文件移动到模块导出文件中,它也不起作用。
如果我做不到,那么我将把我的 report-grid-details-spec.js
代码移动到一个通用的 page object
文件中,并在需要时调用它。
只是想知道是否有人找到解决方案来解决这种需要在一个 conf.js
配置中多次 re-use spec 文件的问题。
谢谢, 鲍勃
If I can't do it, then I'll just move my report-grid-details-spec.js code into a common page object file and call it whenever it's needed.
这可能是解决问题的最简单方法。不过,我喜欢将规范放入模块的想法 - 它对整体可重用性有好处。
问题是,jasmine
不允许在单个测试 运行 中执行相同的测试。而且,据我所知,没有简单的方法可以改变这种行为。
可能的解决方法之一是完全重新启动量角器,因此重新创建 jasmine 测试环境,以便下一个 report-grid-details-spec.js
将 运行 在新的 jasmine 环境中 - 这是 protractor-flake
project uses to retry the failing tests (it basically restarts protractor
through command-line passing the failing specs as a comma-separated list to the specs
argument, source).