Не удается запустить тесты в CppUnitTestFramework (VS2013)

В отдельном потоке исполнения от остальной части моей команды я не могу запускать тесты CppUnitTestFramework для проекта, в то время как остальные потоки запускают тесты просто отлично.

Вот фрагмент кода:

TEST_CLASS(MyClass)
{
BEGIN_TEST_CLASS_ATTRIBUTE()
TEST_CLASS_ATTRIBUTE(L"Type", L"Native C++ Unit Tests")
TEST_CLASS_ATTRIBUTE(L"TestClass", L"MyClass")
END_TEST_CLASS_ATTRIBUTE()

public:

TEST_METHOD(canFooTheBar)
{
...
Assert::IsTrue(foo());
}
...
}

Вот ошибка, которую я получаю при попытке запустить тест:

------ Discover test started ------
Object reference not set to an instance of an object.
========== Discover test finished: 0 found (0:00:00.5129487) ==========
No tests found to run.

Между .sln и любыми соответствующими файлами .vcxproj между различными потоками нет различий.

1

Решение

Возможная причина в том, что у вас есть тестовый класс, в котором нет тестов (в том же проекте).

Удаление такого класса может решить проблему.

Проблема воспроизводится, если я добавлю следующий класс в проект:

TEST_CLASS(MyEmptyClass)
{
BEGIN_TEST_CLASS_ATTRIBUTE()
TEST_CLASS_ATTRIBUTE(L"Type", L"Native C++ Unit Tests")
TEST_CLASS_ATTRIBUTE(L"TestClass", L"MyEmptyClass")
END_TEST_CLASS_ATTRIBUTE()

public:
//no tests
}
1

Другие решения


По вопросам рекламы [email protected]