Может ли CxxTest проводить параметризованные тесты?
Согласно этой статье, можно выполнить параметризованный тест в среде GoogleTest с помощью следующего кода:
INSTANTIATE_TEST_CASE_P(InstantiationName,
MyStringTest,
::testing::Values("meek", "geek", "freek"));
TEST_P(MyStringTest, acceptsEekyWords)
{
ASSERT_TRUE(acceptName(GetParam()));
}
плюс некоторые леса.
Изучив Руководство пользователя CxxTest, я не мог не заметить отсутствие упоминания о параметризованных тестах. Возможны ли параметризованные тесты с CxxTest?
Этот вопрос, кажется, касается чего-то подобного, но ответ отнюдь не тривиален.
Я новичок в модульном тестировании C++. Может быть, параметризованные тесты не имеют большого значения? Почти все мои тесты были параметризованы в моем последнем проекте C# NUnit.
1 ответ
Как я писал в своем ответе на другой вопрос, который вы цитировали, нет возможности генерировать тесты во время выполнения, как это делает любой тестер на основе параметров, который я когда-либо видел. В CxxTest список тестов определяется во время компиляции анализатором C++ на основе Python, cxxtestgen
, Вы можете генерировать комплекты динамически, но у вас есть возможность генерировать ноль или одну копию любого комплекта.