VS15 单元测试
对于生成.exe文件的单元测试
1.解决方案树上创建一个Unit Test Project(本机单元测试). 根据项目设置处理器体系结构X86或者X64. (测试->测试设置->默认处理器体系结构->..).
2.VS自动创建一个unittest1.cpp并生成部分初始代码
TEST_METHOD(TestMethod1) //TestMethod1 测试单元的标注 { // TODO: 在此输入测试代码 }
3.在测试方案上的链接器输入,添加需要测试代码的obj,例如以上我需要添加..\HXQ2\x64\Debug\Func.obj(根据自己项目需的测试单元来配置)
#include "stdafx.h" #include "CppUnitTest.h" #include "../HXQ2/Func.h" //包含的测试相关函数的头文件 using namespace Microsoft::VisualStudio::CppUnitTestFramework; namespace UnitTest { TEST_CLASS(UnitTest1) { public: TEST_METHOD(TestMethod1) { // TODO: 在此输入测试代码 Assert::AreEqual(add(2,3), add(3,2); } }; }
4.在测试方案上的引用上点击右键->添加引用->添加对应的引用项目
问题1:如果在测试浏览器里显示
结果 的消息: 未能设置用于运行测试的执行上下文
其实仅仅是你的测试目标依赖了额外的dll,而这个dll不在单元测试输出目录里。
简单的把dll复制到输出目录可解决此问题。(例如我用的QT, 复制相关的DLL上生成有EXE对应的文件夹下. windeployqt exe的路径)