问题标签 [coded-ui-tests]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
wpf - Microsoft UI 自动化库与编码的 UI 测试
我对Test Automation
这种事情很陌生。最近,我被分配到一个项目,我必须编写一个应用程序(或者,我不确定可能是一个脚本),它将自动执行一个类似 CAD 的 WPF 应用程序的 UI 测试,该应用程序缺少很多AutomationId
s。
在 MSDN 和其他资源上做了一些搜索后,我有点困惑是否应该使用VS2010 中包含Microsoft UI Automation Library
的新功能。Coded UI Test
我不清楚这两种情况中的哪一种适用于哪种情况,一种比另一种有什么优势,哪种适合我的目的。
如果您对此事有经验/知识,请遮住一些光。提前致谢。
selenium - 是否可以用硒进行低级像素检查?
是否可以使用 Selenium 检查浏览器呈现页面中特定像素的值?我可以将渲染页面的缓冲区作为图像吗?
另外,是否可以向浏览器发送鼠标向下滚动命令?
干杯
wpf - 如何访问未实现 AutomationPeer 类的 WPF 自定义控件的内部元素?
最近我从这篇文章中了解到——
http://blogs.msdn.com/b/patrickdanino/archive/2009/11/11/custom-controls-and-ui-automation.aspx
- WPF 中的控件负责自己公开其 UIA 项,并且自定义控件的任何新添加的功能在通过相应的 AutomationPeer 类的实现公开之前对 UIA 不可用。在我的工作中,我被分配到使用大量工具栏的 WPF 应用程序的 UI 测试自动化。问题是,通过 Microsoft UI 自动化库,我可以访问作为 AutomationElements 的工具栏(显然是作为自定义控件开发的),但我无法访问其中的按钮 - 子项/后代集合的计数始终返回 0。使用编码的 UI 测试时,测试总是失败并显示以下错误消息:
测试方法 CAM2QDummyTest.CodedUITest2.CodedUITestMethod1 抛出异常:
Microsoft.VisualStudio.TestTools.UITest.Extension.FailedToPerformActionOnBlockedControlException:另一个控件正在阻止该控件。请使被阻止的控件可见,然后重试该操作。额外细节:
技术名称:'MSAA'
名称:“标准”
控件类型:“工具栏”
---> System.Runtime.InteropServices.COMException:来自 HRESULT 的异常:0xF004F003
显然他们没有实现相应的 AutomationPeer 类。现在,我只有应用程序,没有源代码。所以我无法按照我上面提到的文章中描述的方式解决问题。任何人都可以提供任何线索帮助我如何访问工具栏的内部按钮?任何建议将不胜感激。
testing - 添加断言编码的 UI 测试
我正在使用 Visual Studio 中的编码 UI 测试测试 MS Word 上的附加组件。我现在需要验证登录后用户是否会看到一个新的弹出窗口。我不确定如何验证这一点。我尝试在弹出窗口上拖动十字线图标,但不确定要添加哪个断言。
c# - 防止 TestContext 数据被自动转换
我正在使用从 .csv 文件中读取的数据来参数化我的测试用例。csv 文件中的一列具有美国格式的简单日期值(作为常规字符串),例如mm/dd/yyyy
. 但是,当实际读取数据并将其填充到 aTestContext
中时,TestContext.DataRow["MyDateColumn"]
实际上会返回一个转换后的System.DateTime
对象,并带有时间戳12:00:00 AM
。我绝对不需要也不想要这种自动转换。我该如何阻止这种情况发生?
asp.net - 编码的 UI 控件需要刷新
我正在使用一个编码的 UI 测试工具,它查看我们编写的 jQuery 网格。我遇到的问题是,当网格分页时,当我再次尝试调用分页时,编码的 ui 会跟踪旧控件。我想一个例子会更好地解释它:
BaseMap.MSMaintenanceMap.PageNext();
BaseMap.MSMaintenanceMap.PageNext();
这是我试图开始工作的代码。问题出在生成的设计器文件中:
if ((this.mUITitlePagingRowRow == null))
{
this.mUITitlePagingRowRow = new UITitlePagingRowRow(this);
}
当我将其更改为:
this.mUITitlePagingRowRow = new UITitlePagingRowRow(this);
它每次都有效。问题是当 uitest 重新生成时,由于显而易见的原因,这会恢复。是否有任何人知道我可以放入 .uitest 文件以始终获取最新版本的控件的其他参数?
c# - 类库可以读取正在执行的编码 UI 测试的 app.config 文件吗?
我开发了一个小型实用程序库,可以处理我所有的 Coded UI 测试项目所需的大量配置和日志记录。我将类库设置为使用以下内容读取 app.config 文件来读取值:
我理解当你在另一个项目中包含这个类库时,在执行过程中应该使用新项目的app.config。实际上,这正是我想要的,只是似乎没有发生。
我的另一个项目是一个 CUIT,但它包含的我的类库似乎没有读取任何类型的 app.config。不是它自己的,也不是 CUIT 的。
这甚至可能吗?
asp.net-mvc - WatiN ASP.NET MVC 应用程序的最佳实践/经验法则
我是 TDD 和 BDD 的狂热爱好者,但在 UI 测试方面做得不多。我有一个带有许多 MSpec 测试的 ASP.NET MVC 3 应用程序,我想使用 WatiN 添加演示测试。
你测试什么样的东西?我是否必须为 UI 的初始负载编写测试,或者只为由于用户交互而改变的事情编写测试?
简而言之,在编写 WatiN(以及一般的 UI 测试)测试时,好的经验法则和最佳实践是什么?
random - 有没有办法让 MsTest/Coded UI 测试每次都以新的随机顺序运行?
与 Java 类似: 如何让我的 JUnit 测试以随机顺序运行?
与.Net相反:http: //blogs.msdn.com/b/slange/archive/2010/06/02/ordering-method-execution-of-a-coded-ui-test.aspx
我的理由与第一个链接中的相同 - 我希望通过在每次运行时重新排序来发现测试之间的任何依赖关系。
这可以做到吗?我必须使用MSTest
,因为我的测试驱动 GUI - 他们使用编码的 UI。