У нас есть большое количество тестов / платформ / сред / конфигураций, и мы хотим, чтобы определенные модульные тесты C ++ выполнялись только на некоторых из них.
У нас уже есть подобная система, использующая интеграционные тесты Citrus, где мы используем около 50 тегов для идентификации сред и / или свойств, где определенный тест не должен выполняться (эксклюзивные теги); несколько тегов определяют свойства, которые подразумевают, что тест ограничен конкретной средой / конфигурацией (включая теги).
Из-за большого количества тегов, которые уже используются, и новых тегов, которые обязательно появятся, поэтому фильтрация тестовых случаев для выполнения на основе имени теста (например, GTest поддерживает использование —gtest_filter) поэтому не возможно.
Следуя этому нить, я вижу это XUnit ++ поддерживает это; но только для 8 разных тегов. Также этот проект последний раз обновлялся в 2015 году, что для нас не привлекательно (нам нужно решение для коммерческого продукта).
Кто-нибудь знает фреймворк, который поддерживает наши требования, или есть идея, как просто расширить один из хорошо зарекомендовавших себя, таких как GTest?
Задача ещё не решена.
Других решений пока нет …