我最近开始尝试为我的项目设置单元测试。但是,它不适用于类。
在为 Visual C++ 2012 编译单元测试时,我使用问题 Unresolved externals 中的说明进行了设置。
将会发生的情况是测试将开始正常,但随后会出现内存访问错误(C0000005)。不过,这并不是一直发生的。它通常每 2 或 3 次尝试就会失败,但也有可能每 20 次就会失败一次。代码中的其他函数似乎并不重要。
当我尝试调试测试时,第一次访问或使用变量时,测试将失败。
我正在尝试两种不同的测试框架,Boost.test(使用 Boost Unit Test Adapter)和 Native Unit Tests。他们俩都有同样的问题。
我知道 dll 和测试应用程序都使用相同的调用约定 (__cdecl)。
奇怪的是,测试会工作一段时间,然后突然开始失败。
该项目可在此处获得。
重新安装 Visual Studios 没有帮助。