我们为 Rational Robot (RRAFS)使用SAFS 框架。WinRunner (WRAFS) 也有 SAFS 实现,看起来他们有一个新的“基于图像的测试”实现,我不熟悉。
这个框架很好地将 UI 实现与测试脚本分开。我已经测试了由两个不同团队开发的 Web 应用程序的四个版本(一个团队使用经典 ASP,一个使用 ASP.NET),我只需要更改我的 UI 对象的应用程序映射,测试本身不需要改变。
也就是说,框架的语言很麻烦,需要习惯。就语言结构而言,它不是很健壮,但是通过一些努力,您可以做任何您需要做的事情。这有点像 Windows Batch 语言中的“编程”,但用于测试;)
为了满足您的上述个人要求:
1)该工具必须与 MFC 一起使用(不可协商)。
SAFS 框架使用第 3 方“记录回放”工具来驱动测试,例如 Rational Robot 或 Mercury WinRunner。如果该工具可以与 MFC 应用程序交互,那么框架可以。我不知道“基于图像的测试”实现如何驱动测试,但我猜它也可以与 MFC 一起使用。
2)自动化。
SAFS 框架与STAF框架集成,这将允许您自动执行测试。我有一个概念验证测试,它使用 STAF 从映像池中启动 VM 映像,安装被测应用程序,运行 RRAFS 测试,并将结果放在 Web 服务器上供其他人使用。
3)可编写脚本。
是的,但如前所述,它不是最强大的编程语言。我写了一个 Excel 加载项,我们的测试人员用它来编写他们的测试,这可以稍微简化一些事情。
4)自动使用不同的屏幕分辨率。
是的,因为它在 UI 对象而不是屏幕上“隐藏”。除了“基于图像的测试”选项之外......
5)能够“窥探”单个静态文本框等。
是的,您可以等待 UI 对象出现、消失、具有值、更改值等。
6)足够直观,非程序员也可以创建脚本。
经过一些训练。我们取得了有限的成功。一些 QA 人员可以编写测试,但有些人很挣扎。
7)有报告工具,包括个人用户的电子邮件。
是的,使用 STAF 框架,您可以将结果发布到 Web 服务器、发送电子邮件等。