Cmake Gtest项目exe退出,错误代码为255

时间:2019-03-02 08:40:48

标签: c++ unit-testing visual-studio-2017 exe googletest

我已经在gtest单元案例中使用了许多c ++项目。这些年来,尽管所有这些都运行良好,但是现在在更新了openssl版本1.1.1a之后,看到了一些奇怪的问题。 VS2017中的Bilt

测试项目exe没有执行或根本没有启动。我尝试从命令提示符处执行exe。它只是立即退出执行而没有任何执行或消息。它并没有考虑或考虑--shuffle-tests之类的任何参数。

我尝试在主要功能中添加跟踪线索日志,但仍然无效。

我得到的错误是

6: Test command: plugin-tests.exe "--gtest_shuffle" "--gtest_output=xml:TESTS-plugin.xml"
6: Test timeout computed to be: 10000000
6/8 Test #6: plugin-tests ...........***Failed    0.01 sec

在gtest exe中调试时我很无助,因为对此也没有适当的文档。

请问有人能对此有所了解吗?

它具有标准的GTest函数来初始化和运行所有测试。这些年来一直有效。

我在代码中所做的更改是

已修改 EVP_CIPHER_CTX m_context_encrypt 至 EVP_CIPHER_CTX * m_context_encrypt 并且做了 m_context_encrypt = EVP_CIPHER_CTX_new()

根据openssl1.1以后的结构更改。

而且,openssl静态链接到项目exe,该项目exe需要将两个Windows库链接到

crypt32 ws2_32

因此添加了cmake之类的依赖项,

if( WIN32 ) 
    target_link_libraries(${PROJECT_NAME} crypt32 ws2_32)
endif()

gtest单元测试用例在linux构建中成功执行。 问题出在Windows执行上。

但是,在8个测试项目中,有一个测试项目可以在Windows中正常执行,而我发现cmake文件没有什么区别。

有点奇怪

注意:该exe的退出代码似乎为255

0 个答案:

没有答案