Транспортир, из него можно получить результат () - PullRequest
0 голосов
/ 29 июня 2018

Мой код имеет it с несколькими expect условиями:

it (' xxxx', function (){

expect ().toBe(): 
expect ().toMatch(): 
expect ().toBe(): 
expect ().toMatch(): 
expect ().toBe(): 
expect ().toMatch(): 

});

it пройдет, если все expect пройдут.

Можно сделать if, используя it в качестве условия? Я хочу поймать результат теста, it, чтобы отправить в TestRail

Ответы [ 3 ]

0 голосов
/ 01 июля 2018

Попробуйте цепочку обещаний, которая поможет вам получить статус it, а также catch в конце поможет проанализировать ошибки.

`it('&*&*&**&', (done: DoneFn) => {
                .then(() => expect()
                .then(() => expect()
                .then(() => done());
        });` 

Подробнее см. https://spin.atomicobject.com/2014/12/17/asynchronous-testing-protractor-angular/

Надеюсь, это поможет вам !!

0506

0 голосов
/ 05 июля 2018

Я исправил это с помощью testrail-promisse.

0 голосов
/ 29 июня 2018

Я не знаю, как на самом деле получить результат функции 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();
  });
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...