저는 C++ 테스트 기반 개발을하고 있습니다. 나는 같은 일을하는 일련의 수업을 가지고있다.C++ 단위 테스트 테스트, 템플릿 테스트 클래스 사용
동일한 입력이 동일한 출력을 제공합니다 (또는 테스트해야합니다). Visual Studio 2012의
CppUnitTestFramework를 사용하고 있습니다. 템플릿 테스트 클래스를 만들고 싶었으므로 테스트를 한 번 작성하고 필요에 따라 클래스를 템플릿으로 만들 수 있지만이 방법은 찾을 수 없습니다. 내 목표 :
/* two classes that do the same thing */
class Class1
{
int method()
{
return 1;
}
};
class Class2
{
int method()
{
return 1;
}
};
/* one set of tests for all classes */
template< class T>
TEST_CLASS(BaseTestClass)
{
TEST_METHOD(testMethod)
{
T obj;
Assert::AreEqual(1, obj.method());
}
};
/* only have to write small amout to test new class */
class TestClass1 : BaseTestClass<Class1>
{
};
class TestClass2 : BaseTestClass<Class1>
{
};
CppUnitTestFramework를 사용하여이 작업을 수행 할 수있는 방법이 있습니까?
이렇게 할 수있는 또 다른 단위 테스트 프레임 워크가 있습니까?
답변에 대한 환호성. 이 googletest를 보는 사람은 조금만 가고 가야합니다. 나는 이들을 조합하여 http://blog.knatten.org/2012/09/26/installing-and-using-googletest-with-visual-studio/ 및 http://stackoverflow.com/questions/531941에 사용했습니다./how-to-setup-google-c-testing-framework-gtest-on-visual-studio-2005를 참조하십시오. 컴파일러를 프로젝트 속성에 2010 버전으로 설정하지 않으면 Visual Studio 2012에서 컴파일되지 않습니다. –