在符合条件的情况下取消所有量角器测试

问题描述 投票:1回答:2

我有一个基本的Angular 6应用程序默认设置e2e测试。

我们在测试数据库上进行CRUD操作(在开始e2e测试之前,应该运行测试环境的后端)。

我们的想法是请求一个特定的端点,如果测试环境正在运行,该端点将返回true。 (快递服务器中的后端)

在第一个规范中,我可以发出该请求,但抛出新的Error()不会停止测试。

我发现一些npm软件包强制测试在第一次失败时退出(jasmine失败的鲸鱼和茉莉花快速失败)但我不希望我的测试停止在任何其他异常而不是错误的环境。

我尝试在onPrepare()方法的protractor.conf.js中进行此测试。我可以抛出新的Error()但我无法发出http请求(甚至没有定义基本的XmlHTTPRequest)

我的解决方案是什么,以确保只有在正确的环境运行时才运行测试?

node.js angular jasmine protractor e2e-testing
2个回答
1
投票

process.exit()似乎是一个足够好的解决方案用于您的用例。


0
投票

您可以为您的案例使用茉莉花完成功能。

 it('should do something', (done) => {
        try {
            // doing something and an error happend
            throw Error('failure');
        } catch (error) {
            done.fail(error);
        }
    });

测试将失败并被标记为失败,并将中止当前套件中的未来测试“描述”

© www.soinside.com 2019 - 2024. All rights reserved.