我在Idea中编写并运行我的测试。但它不是很舒服,因为我总是应该更改配置文件中的spec-name,并在更改配置文件时在Idea中编辑配置。 我真的想找到一种方法来运行我的测试而不需要改变配置。也许通过双击(这是一个梦想!)或通过改变配置中的东西。 有人知道我该怎么办吗?或者这是不可能的?
答案 0 :(得分:1)
在this主题中,他们讨论了这个问题,似乎并不容易实现,但你可以挖掘更多。
您可以做的是在运行配置中添加--suite选项(在Idea中称为"应用程序参数"如果您正在使用节点运行e2e,则在运行/调试配置下),例如
--suite=views
您甚至可以单独运行配置来运行特定的套件,并使特定的套件只能容纳单个文件,这样可以按照您的需要进行有效的工作。
据我所知,您无法以这种方式运行单个测试,您需要在套件配置中更改测试文件。您应该可以毫无问题地评论和取消注释文件,因此它不应该是一个很大的麻烦,但您也可以尝试编写外部脚本或工具来为您自动化。
编辑:如果您使用expect / it等,也可以尝试this solution。
答案 1 :(得分:1)
您需要的是"Focused Specs" Jasmine功能。
无需更改配置,只需使用fdescribe
/ fit
标记要运行的测试。
您可能会发现xdescribe
/xit
和pending
等有用的内容。
此外,为了避免意外将fdescribe
或fit
提交到代码存储库,我们已使用eslint
和eslint-plugin-jasmine
插件来捕获这些静态代码分析步骤中的问题。样本输出:
test/e2e/specs/test.spec.js
5:0 error Unexpected fdescribe jasmine/no-focused-tests
答案 2 :(得分:1)
如果我理解你的问题,我相信grunt-protractor-runner grunt插件会让你通过命令行运行不同的测试和不同的选项。
这是一个如何从命令行运行测试的示例:
grunt protractor --specs=specs/some-test.js
有许多关于使用量角器设置grunt的教程。
你也不必做一次测试。你可以指定如下
多个个人规范:
grunt protractor -specs=tests/barret/Smoke_Create_Course_2Plus_TxtBook_spec.js,tests/barret/Smoke_Create_Course_eBook_TxtBook_spec.js,tests/barret/Smoke_Create_Course_Meet_Days_spec.js
包含规范的多个文件夹:
grunt protractor -specs=tests/barret/*.js,tests/barret/with_textbook/*.js,tests/barret/no_textbook/*.js
另外你也可以使用套件。