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