我正在寻找一种方法来重新运行使用Protractor或外部库的失败套件。我以这种方式在套房中组织了我的e2e测试:
suites: {
partOfSystem1: 'path/to/folder/with/specs',
partOfSystem2: 'path/to/folder/with/specs',
partOfSystem3: 'path/to/folder/with/specs',
...
partOfSystemN: 'path/to/folder/with/specs',
},
我有相当多的e2e规格,我们有一个CI,这就是我用这种方式构建它的原因。我知道,我应该让每个规范都独立,但是通过我的测试数量,运行它需要很长时间。每个套件都注册一个新用户,并且在传递套件后,用户将被注销。
运行完整的e2e测试(所有套件),获取套件出错的信息并再次重新运行。
你可以查看这个库。 Protractor Flake
根据文档,
添加依赖项
npm i protractor-flake
# or globally for easier cli usage
npm i -g protractor-flake
运行测试
# protractor-flake <protractor-flake-options> -- <options to be passed to protractor>
protractor-flake --parser standard --max-attempts=3 -- path/to/protractor.conf.js
之前已经回答了更多细节。请检查this answer