Вот программа, которая, по моему мнению, должна существовать: когда приложение запущено, оно автоматически записывает все вызовы для всех методов. Затем он создает тест на основе каждого вызова. (Такой тест можно назвать модульным тестом, но я здесь не делаю этого, потому что существует проблема захвата состояния.)
Для типичного приложения эта программа генерирует тысячи и тысячи тестов автоматически после всего лишь нескольких использований программы.
Эта программа существует? Если нет, то почему? Есть ли программа, которая делает что-то похожее на это?
Более сложная версия этой программы будет делать следующее:
- Было бы рекомбинировать параметры из
несколько звонков для создания нового теста.
Например: метод вызывается с
(1, A) и (2, B). Эта утилита будет
генерировать модульные тесты, которые вызывают
метод с (1, B) и (2, A).
- Это нарушит вызовы для создания новых тестов. Например: метод вызывается с двумя целыми числами (1,2). Эта утилита создаст тесты, которые вызывают метод с (0,2), (1,3), (0,3) и т. Д.
Я ценю тот факт, что некоторые тесты, генерируемые такой утилитой, будут некорректными. Тем не менее, я думаю, что такая утилита была бы чрезвычайно полезна, особенно при тестировании устаревших приложений.