1

我的任务是了解 Visual Studio 的 Coded UI 测试“实用程序”以及自学 C# 以实现自动化目的。我们运行一个基于网络的程序,我在菜单项和屏幕上遇到了很大的困难。我生成了一个新脚本来:
1. 登录应用程序2. 浏览菜单并选择一个 我似乎无法通过登录屏幕
的帐户,我可以让它输入用户名部分,但测试失败(以下错误
) 当我希望它添加密码时。尝试单击菜单项时出现同样的问题。当我使用靶心帮助识别菜单项时,我们已经确定许多菜单项如下图所示:
在此处输入图像描述

在 Firefox、Chrome 和 IE 之间(哦,我的……IE 很糟糕),它们的行为不同。我的 C# 知识非常有限,我根本无法让它发挥作用。任何输入将不胜感激!

错误:

{"无法在控件上执行 'SetProperty of Text with value \"User1\"'。其他详细信息: \r\nTechnologyName: 'MSAA'\r\nName: '请输入您的用户名、密码和 PIN;然后单击登录按钮。如果您尚未注册并需要有关服务的信息,请与我们联系以获取更多信息。'\r\nControlType: 'Edit'\r\n"}

4

1 回答 1

0

编码 UI 是关于成功识别您想要与之交互的对象。您可以直接在 .uitest 文件的第二半中对这些对象进行编码,或者通过右键单击地图视图中的对象并更改 SearchProperties 属性集合来更改记录/自动生成的对象的搜索属性。这将为您更改 .designer.cs 文件的代码。你可以在这里这里找到很多这样的例子。我的猜测是,记录的指定对象识别得太强(通常使用内部文本值或其他可以在运行时动态设置的值,这意味着测试运行者第二次找不到它)。

关于密码输入,很多时候您需要将值作为加密文本输入。您可以设置object.Passwordobject.Text。如果你设置object.Password并且你输入的字符串是未加密的,你需要Playback.EncryptText(unencryptedString). 否则,您应该能够将文本的值设置为该字符串。

于 2014-05-08T12:35:19.097 回答