WatiN-Html元素及元素属性识别
1、WatiN原生识别元素对应表
2、源码中对应配置
在WatiN中一个类可以对应Html中多个类型,如下图,TextField类可以识别Html中TageName为input和textarea,并且可以设置input标记中type属性进行识别。
3、Html标记中属性获取
在WatiN中Html元素类中定义了一些常见的属性,如:Id、Name、InnerHtml、OuterHtml、OuterText、TagName等等,也可以通过GetAttributeValue函数获取自定义的属性。
例:
Html内容
1 <html> 2 <head> 3 <meta charset="utf-8"> 4 <title>WatiN测试页面</title> 5 </head> 6 <body> 7 <input id="text1" type="text" value="文本text" customatt="文本1" /> 8 <input id="text2" type="password" value="password" customatt="文本2" /> 9 <input id="text3" type="textarea" value="文本textarea" customatt="文本3" /> 10 <input id="text4" type="hidden" value="文本hidden" customatt="文本4" /> 11 <textarea id="text5" customatt="文本5">文本域</textarea> 12 </body> 13 </html>
C#代码
1 public static void Test() 2 { 3 //获取IE浏览器 4 IE ie = IE.InternetExplorers().FirstOrDefault(p => p.Title != null && p.Title == "WatiN测试页面"); 5 StringBuilder msg = new System.Text.StringBuilder(); 6 string formatStr = "id:{0}, type:{1}, value:{2}, customatt:{3}"; 7 foreach (TextField item in ie.TextFields) 8 { 9 //获取文本框/域属性值 10 msg.AppendLine(string.Format(formatStr, 11 item.Id,//获取ID属性值 12 item.GetAttributeValue("type"),//获取type属性值 13 item.Text,//获取显示文本 14 item.GetAttributeValue("customatt")//获取自定义属性值 15 )); 16 } 17 System.Windows.Forms.MessageBox.Show(msg.ToString()); 18 }
执行结果