And*_*eas 0 c++ unit-testing visual-studio
我目前正在使用Visual Studio编写C ++程序。
现在,我想添加第二个Test项目,该项目应该包含我的单元测试。现在的问题是,如果我想测试自己的代码,则即使我包含了标头,也必须将源文件中每个主文件的.cpp文件从主项目添加到第二个项目中。有更好的选择吗?
非常感谢你。
您可以按照以下方式操作:
.h和.lib放入可执行文件中Test项目做同样的事情我将在下一个示例中尝试解释我的想法:
项目名称MyProject:
main.cpp:
#include "my_vector.h"
#include "my_matrix.h"
int main()
{
MyVector vect;
MyMatrix matrix;
// some operations with vect and matrix
}
Run Code Online (Sandbox Code Playgroud)
my_vector.h:
#pragma once
struct MyVector
{
// fields and methods for MyVector
}
Run Code Online (Sandbox Code Playgroud)
my_vector.cpp:
#include "my_vector.h"
// definitions of methods for MyVector
Run Code Online (Sandbox Code Playgroud)
my_matrix.h:
#pragma once
struct MyMatrix
{
// fields and methods for MyMatrix
}
Run Code Online (Sandbox Code Playgroud)
my_matrix.cpp:
#include "my_matrix.h"
// definitions of methods for MyMatrix
Run Code Online (Sandbox Code Playgroud)
项目名称Test:
main.cpp:
// depends on what testing framework do you use
Run Code Online (Sandbox Code Playgroud)
my_vector_test.cpp:
#include "my_vector.h"
// code for MyVector testing
Run Code Online (Sandbox Code Playgroud)
my_matrix_test.cpp:
#include "my_matrix.h"
// code for MyMatrix testing
Run Code Online (Sandbox Code Playgroud)
你做什么:
MyProject仅保留文件main.cppMyMath和举措my_vector.h,my_vector.cpp,my_matrix.h,my_matrix.cpp成MyMath.lib到的链接MyProjectMyMath.lib到的链接Test