我的代码有一个it
,其中有几个expect
条件:
it (' xxxx', function (){
expect ().toBe():
expect ().toMatch():
expect ().toBe():
expect ().toMatch():
expect ().toBe():
expect ().toMatch():
});
如果所有it
通过,则expect
将通过。
是否可以使用if
作为条件的it
?
我想捕获测试结果it
,以发送到TestRail
答案 0 :(得分:1)
我不知道如何实际获得it函数的结果。但是您可以将结果存储在一个在规范文件开始处声明的变量中,如下所示:
describe('when testing site xxx', function() {
var firstItSuccess = false;
afterAll(function() {
// send data to test rail after test..
if(!firstItSuccess) {
sendResultToTestRail(firstItSuccess);
} else {
// ...
}
});
it('should load contents', function() {
var ecpectedText = getExpectedText();
var currentText = getCurrentText();
firstItSuccess = expectedText === currentText;
expect(firstItSuccess).toBeTruthy();
});
});
答案 1 :(得分:0)
尝试使用诺言链,它可以帮助您获取it
的状态,最后的catch
也会有助于分析失败情况。
`it('&*&*&**&', (done: DoneFn) => {
.then(() => expect()
.then(() => expect()
.then(() => done());
});`
有关更多详细信息,请参见https://spin.atomicobject.com/2014/12/17/asynchronous-testing-protractor-angular/
希望这对您有帮助!
答案 2 :(得分:0)
我用testrail-profixe修复了它。