WatiN-Html元素的操作

  自动化测试,何为自动化测试,简单点说就是机器代替人工操作,那么WatiN实现Web应用在浏览器上的自动化就需要模拟人工点击、输入、选择、拖放等等操作,在这些操作中会触Html元素的onclick、onchange、onmousemove等事件。在WatiN中提供了FireEvent和FireEventNoWait。下面举一些常见的元素操作例子。

  1、文本框输入

  有人说,不就是文本框输入吗,可简单,直接设置元素Value属性就可以了。是的,如果只是输入的动作,那么就这么简单,但是在实际测试中,文本框的onchange、onblur、onfocus等事件就需要考虑了。

实例:

Html

 1 <html>
 2 <head>
 3     <meta charset="utf-8">
 4     <title>WatiN测试页面</title>
 5 </head>
 6 <body>
 7     <div>
 8         <input type="text" id="txtName" onblur="alert('失去焦点')" />
 9     </div>
10 </body>
11 </html> 

C#

1 IE ie = IE.InternetExplorers().FirstOrDefault(p => !string.IsNullOrEmpty(p.Title) && p.Title == "WatiN测试页面");
2 
3 TextField name = ie.TextField(Find.ById("txtName"));
4 name.Focus();
5 name.Value = "张三";
6 
7 name.FireEvent("onblur");

   2、选择框

Html

<html>
<head>
    <meta charset="utf-8">
    <title>WatiN测试页面</title>
</head>
<body>
    <div>
        <select id="selState">
            <option>--请选择--</option>
            <option>待出库</option>
            <option>已发货</option>
            <option>配送中</option>
            <option>已签收</option>
        </select>
    </div>
</body>
</html> 
1 IE ie = IE.InternetExplorers().FirstOrDefault(p => !string.IsNullOrEmpty(p.Title) && p.Title == "WatiN测试页面");
2 
3 SelectList stateList = ie.SelectList(Find.ById("selState"));
4 stateList.SelectByValue("已发货");

 

posted @ 2017-02-25 11:29  强哥的说说  阅读(475)  评论(0编辑  收藏  举报