我通过记录操作使用Coded UI Test的代码生成器,我遇到了一个问题和一些问题:
我遇到的问题是我正在尝试录制测试。我转到主页并单击链接。问题是这个特定的链接" 崩溃"视觉工作室。每当我使用IE点击它时,它会停止工作一段时间,然后几秒钟后,录音机会打印出这条消息:Last mouse action was not recorded
。
当我没有录制时,此链接有效,并且录制适用于Chrome。但是,当我使用IE记录时,它并不存在。我意识到这个链接有些不同,它在源代码上看起来像这样:
...
<a href="/login"></a>
...
其他链接在<a>
标记内有内容。这是什么原因?为什么不录音时才有效?录音时不能录音?
[我在使用Visual Studio 2013的Windows 2008上]
我应该如何使用这些编码的UI测试?每个功能一个CodedUITest.cs
或一个文件中的几个相关测试?
是否可以传递browser
作为参数(即IExplorer,Chrome),以便可以在该浏览器中运行测试?我可以通过以下方式在不同的浏览器中使用相同的代码运行测试:
...
BrowserWindow.CurrentBrowser = "Chrome";
UIMap.CheckMainPage();
...
我要问的是,是否有办法运行像CheckMainPage("Chrome")
这样的测试,而不是写一个新方法。
答案 0 :(得分:0)
由于encodeui测试方法无法获取参数,因此您可以使用两个选项来设置所需的浏览器:
使用数据驱动测试 - 这会为您数据中的每一行多次测试:https://msdn.microsoft.com/en-us/library/ee624082.aspx
从配置文件中读取值(这样您就可以在不更改代码的情况下更改浏览器)
https://msdn.microsoft.com/en-us/library/jj835758.aspx
为什么记录器在该特定链路上失败 - 需要更多信息 - 但是缺少任何唯一标识符可能会阻止记录器进行操作并识别链接(如果可能的话,在标签上添加Id属性并重试)