【发布时间】:2019-08-16 13:30:14
【问题描述】:
我有一个基本的 Angular 6 应用程序,默认设置了 e2e 测试。
我们在测试数据库上进行 CRUD 操作(测试环境的后端应该在开始 e2e 测试之前运行)。
这个想法是在测试环境正在运行时请求一个返回 true 的特定端点。 (快速服务器中的后端)
在第一个规范中,我可以提出该请求,但 throw new Error() 不会停止测试。
我发现一些 npm 包会强制测试在第一次失败时退出(茉莉花失败鲸鱼和茉莉花快速失败),但我不希望我的测试在错误环境之外的任何其他异常上停止。
我尝试在 protractor.conf.js 中的 onPrepare() 方法中进行此测试。我可以在那里抛出 new Error() 但我不能发出 http 请求(甚至基本的 XmlHTTPRequest 都没有定义)
我有哪些解决方案可以确保仅在正确的环境运行时才运行测试?
【问题讨论】:
-
process.exit()适合你吗? -
@thorn̈ 似乎以意外错误结束测试。我想要一个更干净的出口,但它确实可以满足我的需要,谢谢
-
@thorn̈ 你能发布一个答案让我接受吗? :)
标签: node.js angular jasmine protractor e2e-testing