用菜单进行C++测试与应用
C++Testing and Application with Menu
我想测试一个应用程序,它有一个多撕裂菜单系统,您可以在其中导航。有没有一种方法可以让我使用Python脚本自动测试这个应用程序?还是Visual Studio的附加组件?
编辑:整个程序在控制台中工作,应用程序对大多数输入都期望std::cin
。
谢谢,
您可以使用像RationalTest这样的高端工具来做很多这样的事情,但您将为此特权支付巨额奖金。
在Windows上,您可以将Windows消息发送到相应的窗口。找到Window句柄需要一些技巧,但这并不太难。不确定这在*nix上是否可行,但我不会感到惊讶。
另一种选择是"仪器"你的程序。监听套接字中的"命令"并执行它们。你需要小心,不要引入安全漏洞。只要你只接受本地套接字,并且不给套接字命令任何额外的特权(与键盘/鼠标命令相反),这还不错。
如果你在Windows上,我可能会选择发送Windows消息。
编辑
如果你的应用程序是一个控制台应用程序,它可能会容易得多。
如果从C或C++程序启动应用程序,则可以将stdin和stdout重定向到管道并控制i/o。你很可能可以用Python来做,但我不是这方面的专家。查看popen()或CreateFile()(仅限Win)。
相关文章:
- Qt QML桌面应用程序自动化测试
- C++低吞吐量 winsock TCP 测试应用程序
- 如何使用Boost单元测试框架测试Qt应用程序
- 使用C 单元测试框架集成测试Java应用程序
- 如何使用Visual Studio Code来调试使用Google Test测试的应用程序?
- 在单元测试中测试连接丢失(在节俭的C++应用程序中或一般情况下)
- C++11 监视器类,测试应用程序不想退出
- 使用 ASSERT_DEATH 时,有没有办法在应用程序终止后自动继续执行所有测试
- 使用 VS2010 MFC + 测试应用的简单 DLL
- 如何使用谷歌测试将单一测试应用于所有子类
- 编译提升::数学的性能测试应用程序
- 启动 VirtualBoxSDK 测试应用程序返回错误"Error creating virtual box instance"
- 将OpenGL深度测试应用于轨道球体
- 在Amazon EC2上安装测试应用程序
- 用Python在Qt上编写的自动测试应用程序
- LNK1104.dll链接到 Visual Studio "invalid or corrupt file" 中的测试应用程序时出错
- 无法使用谷歌的protobuf构建测试C++应用程序
- 如何杀死Cocos2d-x测试应用程序
- 简单的线程/互斥测试应用程序崩溃
- 单元测试-如何组织C++测试应用程序和相关文件