我们使用
SAFS framework来进行Rational Robot(RRAFS)测试。同时,也有适用于WinRunner(WRAFS)的SAFS实现,并且他们似乎有一个新的“基于图像的测试”实现,我不太熟悉。
这个框架很好地将UI实现与测试脚本分离。我已经测试了由两个不同团队开发的四个版本的Web应用程序(一个团队使用经典ASP,另一个团队使用ASP.NET),我只需要更改我的UI对象的应用程序映射,而测试本身不需要更改。
话虽如此,该框架的语言笨重且需要适应。从语言结构上看,它并不是非常健壮,但是通过一些努力,您可以完成任何需要的操作。这就像在Windows批处理语言中进行“编程”,但用于测试 ;)
针对您上面的个人要求:
1) 该工具必须与MFC兼容(不可协商)。
SAFS框架使用第三方“录制-回放”工具来驱动测试,如Rational Robot或Mercury WinRunner。如果该工具可以与MFC应用程序交互,则框架可以。我不知道“基于图像的测试”实现如何驱动测试,但我猜测它也可以与MFC一起使用。
2) 要自动化。
SAFS框架与STAF框架集成,这将允许您自动执行测试。我有一个概念验证测试,使用STAF从映像池启动VM映像,安装正在测试的应用程序,运行RRAFS测试,并将结果放在Web服务器上供其他人获取。
3)要可编程。
是的,但正如提到的那样,它不是最强大的编程语言。我编写了一个Excel插件,我们的测试人员用它编写他们的测试,简化了一些事情。
4) 自动适应不同的屏幕分辨率。
是的,因为它查看的是 UI 对象而不是屏幕。除了“基于图像的测试”选项可能需要注意...
5) 能够“窥视”单个静态文本框等。
可以,您可以等待 UI 对象出现、消失、具有值、值被更改等。
6) 直观易用,以便非程序员可以创建脚本。
需要一些培训。我们的成功有限。一些 QA 人员可以编写测试,一些则很困难。
7) 具有报告工具,包括单个用户的电子邮件。
是的,使用 STAF 框架,您可以将结果发布到 Web 服务器、发送电子邮件等。