传统非MFC应用程序的自动GUI测试?

时间:2009-04-16 05:47:00

标签: unit-testing testing automation

我们有一个最初几十年前开发的系统,并且多年来代码库已经增加。 这是一个相当重要的系统,我们部门维护的配置(供应商不允许我们访问源或底层数据库)。 客户端软件是专有开发的应用程序,它基本上是连接到主数据库的奇特终端应用程序。

我希望能够编写单元测试来自动测试系统的各种功能组件。 我试图使用AutoIT和AutoHotkey没有运气,我的问题是我无法从窗口读取数据,因为它是一个自定义类(窗口查找器出现空白)。 我甚至尝试过使用带AutoIT的OCR API但没有成功(它不可靠)。 我也尝试使用像CRT和putty这样的终端模拟器,但是在按键等时,普通客户端软件会发送特定的非终端标准数据,因此尝试使用CRT和putty。

似乎所有测试套件都只适用于基于Web的应用程序或更标准化的应用程序。

还有其他人有过类似的问题吗?

3 个答案:

答案 0 :(得分:0)

尝试“自动化质量保证:测试完成”。我们现在已经将它用于主要应用程序,它是唯一可以测试WPF,Win32,.NET,Java等应用程序的产品,几乎没有麻烦。创建测试方案后,您可以稍后将其作为回归测试重新运行。

答案 1 :(得分:0)

对于Windows上的胖客户端和/或终端客户端的自动GUI测试,您可能还会考虑IBM Rational Functional Tester,IBM Rational Robot,HP QTP,Compuware TestPartner,Borland SilkTest。

更具体地说,听起来您可能需要使用旧的复制粘贴工作。终端窗口是否具有Edit-> Select All,Edit-> Copy菜单的等效功能?如果是这样,您可以对其进行编码以单击GUI菜单以选择所有文本并复制到剪贴板。文本放在剪贴板上后,您可以使用剪贴板API访问和解析文本。

答案 2 :(得分:0)

我最终使用了AutoIT和TextCaptureX的组合。 上面提出的解决方案是很好的产品,但在这种情况下并不真正起作用。 TextCaptureX实际上挂钩到Windows GDI以获取文本。

我已经开发了测试脚本,可以很好地对我们的应用程序执行GUI测试。