Модульное тестирование случайно сгенерированной строки - PullRequest
0 голосов
/ 03 декабря 2018

У меня есть следующий метод:

generateKey: () => {
    let key = Math.random()
      .toString(36)
      .substring(2, 10);

    return key;
  }

Этот метод генерирует случайную строку символов, и я хочу провести ее модульное тестирование.

После поиска, как я пришел к модульному тесту случайности, я пришелчерез следующие ответы, но не конкретное приложение:

Как я могу проверить случайность в этом конкретном случае?

Проверка длины строки и ее содержимого достаточно проста, но проверка на то, что значения были действительно сгенерированы случайным образом, кажется невозможной.

1 Ответ

0 голосов
/ 03 декабря 2018

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

Как я могу проверить случайность в этом конкретном случае?

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

Вы можете частично проверить случайность, выполнив свою функцию миллион раз и проверив, что дублированные результаты не были сгенерированы.

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