识别编码UI脚本的HtmlControl的最佳方法

时间:2014-06-16 17:59:04

标签: coded-ui-tests

我手动编写一些脚本来测试带有Coded UI的Web应用程序。知道哪些HtmlControl标签应该用于我想要操作的元素的最佳方法是什么?例如,如何轻松判断我是否应该使用HtmlDiv或HtmlSpan等?我知道标签提供了一个提示,但有更简单的方法吗?

3 个答案:

答案 0 :(得分:1)

尝试使用CUITe附带的对象记录器。这样就可以为您记录对象属性,以便于复制/粘贴。

答案 1 :(得分:1)

使用浏览器开发模式(如Firefox中的firebug)来识别什么是什么。

您还可以使用inspect.exe应用程序(http://msdn.microsoft.com/en-us/library/windows/desktop/dd318521(v=vs.85).aspx)来帮助其他不是浏览器的窗口。

答案 2 :(得分:1)

尝试使用BrowserWindow的ExecuteScript方法

提取对象信息
object control = BrowserWindow.ExecuteScript("return $('#yourControlId');");

如果您的控件属于 HtmlCustom 类型,则在返回类型上悬停时,它将显示 CustomType [自定义] CustomType [ HtmlSpan 的跨度] ,然后您可以轻松地将其转换为适当的控件。

如果您只有HtmlDiv和HtmlSpan控件,那么您可以使用泛型方法并对它们执行任何操作

           protected void PerformAction(object control)
           { 
                object htmlControl = ((List<object>)control)[0];
                HtmlDiv htmldiv = htmlControl  as HtmlDiv;
                HtmlSpan htmlspan = null;

                if (htmldiv == null)
                {
                    htmlspan = htmlControl  as HtmlSpan ;

                    if (htmlspan != null){
                       // Write your action  
                    }
                }

                if (htmldiv == null && htmlspan == null) return;
                // Do your code
            }

在悬停时,您可以获取控制信息,如附带的屏幕截图所示。

enter image description here