詹金斯(Jenkins)证明,量角器测试即使失败也会成功

时间:2019-10-28 20:49:31

标签: jenkins protractor automated-tests

Jenkins在控制台清楚显示失败时将Protractor测试显示为成功。

我也在代码中添加了Expect()和fail(),但只是为了避免误报而无法使脚本失败。

脚本代码

>>> nose.run(argv=['--plugins'], plugins=[TestDocs()], 
             addplugins=[OtherPlugin(), AnotherPlugin()])
Plugin OtherPlugin
Plugin testdocs
Plugin AnotherPlugin

这些似乎根本没有任何作用。

 async fillCategories(): Promise<void> {
        try {
            await this.helper.compareText(this.projectNamePath, this.projectName);
            await this.helper.compareText(this.projectStatus, 'Started');
            await browser.wait(ExpectedConditions.presenceOf(this.verticalDots), 500);
            await this.helper.compareText(this.commonElements.lCurrentStepName, 'Categories');
            await this.helper.click(this.firstCheckbox);
            await this.helper.click(this.btnSaveAndContinue);
        } catch (error) {
            console.log(`Something wrong while filling categories.`);
            fail(`Something wrong while filling categories.`);
            expect(`Test`).toBe('Fail');
        }
    }

Jenkins控制台:

 fail(`Something wrong while filling categories.`);
            expect(`Test`).toBe('Fail');

在上面的最后一行看到成功了吗?

团队成果

enter image description here

1 个答案:

答案 0 :(得分:0)

所以我正在使用shell命令。而对我来说窍门就是像这样运行量角器

ERROR=0
protractor conf.js || ERROR=1
exit $ERROR

如果量角器通过,则错误仍为零,并且当您exit 0时,它将标记您的构建成功

|| ERROR=1仅在量角器失败时执行,覆盖值并使用失败的代码1退出

我希望您可以从这里拿走并为您的案子做一个类似的事情