Я пытаюсь создать несколько тестовых случаев и прочитал, что вы должны попытаться ограничить количество утверждений для каждого тестового случая.
Поэтому мой вопрос заключается в том, как лучше всего протестировать функцию с несколькими входами. Например, у меня есть функция, которая анализирует строку у пользователя и возвращает количество минут. Строка может иметь вид "5w6h2d1m"
, в котором w, h, d, m
указано количество недель, часов, дней и минут.
Если бы я хотел следовать «1 утверждению на правило теста», мне пришлось бы сделать несколько тестов для каждого варианта ввода? Это кажется глупым, поэтому вместо этого у меня есть что-то вроде:
self.assertEqual(parse_date('5m'), 5)
self.assertEqual(parse_date('5h'), 300)
self.assertEqual(parse_date('5d') ,7200)
self.assertEqual(parse_date('1d4h20m'), 1700)
В одном тестовом случае. Есть ли способ лучше?