MFC gui可通过谷歌测试进行测试

MFC gui testable with google test?

本文关键字:测试 谷歌 gui 可通过 MFC      更新时间:2023-10-16

我一直在使用gtest作为我的C++单元测试框架,它非常适合控制台应用程序。有人知道是否可以使用这个(或者哪一个是很好的替代方案)来测试MFC应用程序吗?我的意思是,根据GUI的事件(文本框中的文本、按钮点击等)进行自动测试。我见过像TestComplete这样的应用程序,但我想知道gtest是否提供了类似的东西,或者是否有免费/开源的替代方案可以开始。

我也一直在尝试做同样的事情,到目前为止,我的解决方案是在windows应用程序和控制台应用程序之间来回切换:

http://hdrlab.org.nz/articles/windows-development/changing-a-windows-app-to-a-console-app-in-visual-studio/

如果上面的链接是死的,那么在属性页中,

链接器->系统->子系统->选择"控制台"

C/C++->预处理器->预处理器定义->将"_WINDOWS"更改为"_CONSOLE"

然后确保你有一个.cpp,它有一个main()函数必需的#includes用于测试所有后端逻辑。如果切换回一个windows应用程序,我发现它只是忽略了你的主要功能与WinMain()没有任何冲突,因此您不需要做任何乏味的注释或不做任何事情。无论如何,这是一个棘手的解决方案,我仍在做一些研究和实验。

我建议您将Coded UI作为一种替代方案。您可以提交代码或记录测试,稍后再播放。如果您决定提交代码,请准备使用C#。该工具使用C#类来定义和运行测试。