Транспортир: проблемы с созданием сценариев

До этого дня я всегда делал отдельные небольшие тесты. Но теперь я хочу запустить их по одному сценарию. И у меня странная ошибка. Некоторые тесты не могут работать вместе. Например. Первый:

beforeEach(function(){
    browser.get('ng-components/examples/ps-grid-column-filter-range.html');
});

it('балун содержит текст', function () {
    filter_field.click();
    browser.actions().click(filter_field).perform();

browser.wait(function () {
  return balloon_info.isPresent();
     },5000).then(function () {
       expect(balloon_text.getText()).toContain(balloon_contain_text);
       expect(balloon_text.isDisplayed()).toBe(true);
  }).thenCatch(function () {
      expect(true).toBe(false);
 });
console.log("ps-grid-column-filter-range_spec_1.1.с");
});

Второй:

  beforeEach(function(){
    browser.get('ng-components/examples/ps-grid-column-filter-range.html');
 });

it('балун демонстрируется', function () {
    filter_field.click();
    browser.actions().click(filter_field).perform();

    browser.wait(function () {
      return balloon_info.isPresent();
      },5000).then(function () {
        expect(balloon_info.isDisplayed()).toBe(true);
    }
    ,function (error) {
       expect(false).toBe(true);
   });

console.log("ps-grid-column-filter-range_spec_1.1.a");
  });

Когда мои тесты были изолированы, они работали нормально. Но в группе - они терпят неудачу. В чем моя ошибка? Это проблема с асинхронным?

Кроме того, интересно то, что в каком-то неработающем тесте нет метода wait().

1 ответ

browser.wait не блокируется, поэтому ваш второй тест, вероятно, выполняется, пока ваш первый еще не завершен. И поскольку это одна и та же функциональность, они, вероятно, влияют на результат друг друга. Попробуйте поместить их обоих в один и тот же тест

.then()

Вы можете сделать ожидание блокировки транспортира, следуя этому примеру

Блокировка ожидания

Другие вопросы по тегам