Пользовательская функция в testcafe - PullRequest
0 голосов
/ 13 ноября 2018

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

function isNumber(n) {
  let a = parseInt(n);
  if (a > 0 || a < 0) {
    return true
  } 
  return false
}
test('Test example', async t => {
  await t
      .expect(isNumber(Selector('#thisNum').innerText)).ok('This is a number' );
    
});

1 Ответ

0 голосов
/ 14 ноября 2018

Сообщение о подтверждении будет отображаться только , когда подтверждение не выполнено (см. Параметр сообщения). Например,

await t
  .expect(failingValue).ok('failingValue is not a number');

При неудачном тестировании будет отображаться что-то вроде следующего:

1) AssertionError: failingValue is not a number: expected false to be truthy

Поэтому я бы никогда не ожидал увидеть сообщение «Это число».

Что касается функции, я встречал пару случаев, когда обещание еще не было выполнено, поэтому попробуйте дождаться выбора номера:

await t
  .expect(isNumber(await Selector('#thisNum').innerText)).ok('This is a number');

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...