c# - CUIT(编码的 UI 测试)+ MVVM——我现在必须开始命名我的所有控件吗?

标签 c# wpf testing mvvm coded-ui-tests

基本上,使用 MVVM 我有很多未命名的控件,因为不再需要为控件提供名称(或 x:Name)。

但是,查看编码的 UI 测试似乎我可能必须重新命名我的所有控件?或者我只是误解了我读到的内容,并且有一种 MVVM 友好的方式来执行 CUIT?

最佳答案

如果您想使用记录的测试与控件进行可靠的交互,您需要为控件提供名称或 ID。如果没有名称,您的测试将依赖于实例属性,正如您所注意到的,该属性取决于未命名控件相对于其他未命名控件的位置。

如果您的应用程序是非常静态的,您可以不用名称而逃脱,但移动控件可能会导致损坏。您还会遇到动态加载的控件的问题,因为它们会导致实例值更改,并且您记录的操作可能会发生在错误的控件上。

不要误会我的意思,您可以为没有控件名称的应用程序编写 CodedUI 测试,这将是一个主要的痛点,并且记录将不可靠。

关于c# - CUIT(编码的 UI 测试)+ MVVM——我现在必须开始命名我的所有控件吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9356078/

相关文章:

c# - LINQPad:如何使用SQLite整数主键自动赋值

c# - 如果浏览器关闭,GoogleWebAuthorizationBroker.AuthorizeAsync() 会挂起

c# - 旋转文本以进行打印

c# - 程序集生成失败——引用的程序集 'Interop.Office' 没有强名称

c# - 如何为 DateTimePicker DatePart WPf 设置格式

wpf - 填充 EllipseGeometry

c# - Sound.readData 和 Sound.lock 在 FMOD 上的区别?

json - 如何测试期望通过 POST 请求接收 JSON 数组的 Controller 操作?

android - 编写 Android Espresso 测试

testing - 渐变 : java tests ran twice