aimclub / GOLEM

Graph Optimiser for Learning and Evolution of Models
https://thegolem.readthedocs.io
BSD 3-Clause "New" or "Revised" License
60 stars 7 forks source link

Increase test coverage #224

Open maypink opened 11 months ago

maypink commented 11 months ago

The current percent of coverage is ~74%, which is relatively small and allows to make more thoughtless and untested changes. Even though some functionality can be covered with integration tests, it is not enough, since unit tests allow to easily track all inconsistencies. Covergae with units must be increased to make GOLEM more stable. So the current files with the smallest percent of coverage can be seen here. These are mainly:

image

maypink commented 11 months ago

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

kasyanovse commented 11 months ago

Я могу взять ответственность за тесты модулей в golem/core/optimisers/genetic.

MorrisNein commented 11 months ago

На днях как раз размышлял, как покрыть тестами параметры визуализаций.

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

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

kasyanovse commented 11 months ago

Для уже существующей ветки создал PR https://github.com/aimclub/GOLEM/pull/236 и добавил пару тестов.