我们正在寻找 Microsoft CRM 的测试解决方案,我们可以在其中自动化 UI 测试。我正在查看 Visual Studio 2012“编码的 UI 测试”,看来您需要拥有整个项目源代码才能对测试进行编码。所以我的问题是:“Visual Studio(或 TFC)编码的 UI 测试能否用于您没有源代码的外部应用程序”?
4 回答
Coded UI 不需要或使用应用程序的源代码。编码 UI 完全在应用程序的用户界面上工作。它使用与视障人士使用的屏幕阅读器相同的机制来观察屏幕上的项目。同样,它使用替代键盘和指针将使用的输入机制。这些是 MSAA 和 UIA 接口。
根据此页面 - 编码 UI 测试和操作记录的支持配置和平台http://msdn.microsoft.com/en-us/library/dd380742.aspx,VS CUIT 操作记录完全支持 Dynamics CRM Web 客户端。
无需访问源代码,但包括编码 UI 在内的所有 UI 自动化框架都通过操纵呈现页面的 DOM 来工作。我认为您对服务器端源代码和呈现的 HTML 源代码感到困惑。
过去的经验使我得出结论,虽然自动化 UI 测试可以通过 CRM 2011 实现,但生成的脚本的维护通常是不值得的。CRM 2011 中使用的弹出窗口/iframe 的数量使脚本非常脆弱。
基本上我无法回答您的直接问题(我不知道 VS Coded UI 测试)。正如 Adrian 已经提到的那样,UI 测试不需要您访问源代码,因为您正在针对正在运行的应用程序进行测试。
但是,由于 Dynamics CRM 2011 主要是一个 Web 应用程序,您可以使用ieunit 之类的库来使用 IE 执行测试。
由于 Rollup 12 Dynamics CRM 2011 还支持其他浏览器,因此您也可以使用像zombie.js或phantom.js这样的框架