MS 本机单元测试 - 断言::线程失败不起作用
MS Native unit test - Assert::Fail from a thread won't work
示例代码:
TEST_CLASS(MyTests)
{
TEST_METHOD(MT_Test)
{
std::thread t([]()
{
Assert::Fail(L"Failure!");
});
t.join();
}
};
当MT_Test
运行/调试时,它永远不会说测试由于测试断言失败而失败。不同运行或不同 VS 版本(2017/2019(上的不同行为:
- 测试成功(绿色勾号(
- 测试变得不确定(蓝色感叹号(
- MS 测试引擎崩溃
但没有一次测试失败。
如何从线程传播/渲染此类故障?
根据 CppUnitTestFramework:Testrunner 在线程中被 Assert 语句崩溃,
让我直截了当地说:该框架不是为检查而设计的 线程中的测试条件(断言(?
不幸的是,没有,C++测试框架假设异常 断言抛出的将在同一线程上。
相关文章:
- sigwait() 在多线程程序中不起作用
- MS 本机单元测试 - 断言::线程失败不起作用
- 线程之间的通信不起作用 - C++
- Qt信号和插槽如果从QRunnable或其他线程调用,则不起作用
- 谷歌语音识别不起作用,因为冲突线程Qt C++
- 线程函数参数的前向声明不起作用
- 使用 Visual c++ 进行多线程同步不起作用
- 通知所有在多线程C++不起作用.导致死锁
- 多线程 - 彼得森算法不起作用
- 为什么此C 线程示例不起作用
- Eclipse c++11 线程支持不起作用
- C 11线程不起作用
- WinAPI 的睡眠在子线程中不起作用
- QMutex ,如果线程在起作用,请在此处等待
- 使用CSokcet和CWinThread,来自线程的PostMessage不起作用
- 程序基于用户输入创建多个线程不起作用(cin)
- 线程对象的 WaitForSingleObject 在 DLL 卸载中不起作用
- C++获取线方法不起作用
- 套接字:客户端读取消息时多线程不起作用
- Qt - 同步线程不起作用 - 线程停止但实际上不会停止,有时在不应该停止的时候停止