自动化测试,何为自动化测试,简单点说就是机器代替人工操作,那么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("已发货");

转载于:https://www.cnblogs.com/xiaoqiangcode/p/6431435.html

WatiN-Html元素的操作相关推荐

  1. jQuery元素内容操作的方法有多少种?

    jQuery中操作元素内容的方法,主要包括html()方法.text()方法和val()方法.html()方法用于获取或设置元素的HTML内容,text()方法用于获取或设置元素的文本内容,val() ...

  2. JavaScript创建元素的三种方法特点及对元素的操作

    用js代码创建或添加html元素有三种方法 document.writer() document.write("<p>我就是p1</p>"); 复制代码 注 ...

  3. 事件冒泡、事件委托、jQuery元素节点操作、滚轮事件与函数节流

    一.事件冒泡定义 事件冒泡是指在一个对象触发某类事件(比如单击onclick事件),如果此对象定义了此事件的处理程序,那么此事件就会调用这个处理程序,如果没有定义此事件处理程序或者事件返回true,那 ...

  4. Eigen(5)Array类和元素级操作

    0. 为什么使用Array 相对于Matrix提供的线性代数运算,Array类提供了更为一般的数组功能.Array类为元素级的操作提供了有效途径,比如点加(每个元素加值)或两个数据相应元素的点乘. 1 ...

  5. jquery元素节点操作

    jquery元素节点操作 创建节点 var $div = $('<div>'); var $div2 = $('<div>这是一个div元素</div>'); 插入 ...

  6. python获取页面隐藏元素_selenium操作隐藏的元素(python+Java)

    有时候我们会碰到一些元素不可见,这个时候selenium就无法对这些元素进行操作了.例如,下面的情况: Python 页面主要通过"display:none"来控制整个下拉框不可见 ...

  7. Eigen官网教程(2) Array类和元素级操作

    0 引言 Array类提供了和Matrix不同的操作,Matrix主要为了线性代数而设计,而Array类是通常用的数组.Array类提供了更方便的元素级的操作,但是没有线性代数方面的意义,比如给每个元 ...

  8. 第五章 常用页面元素自动化操作(上)

    -----Web自动化测试之Webdriver(python)--从零到熟练(系列) 经过我们对自动化测试环境的搭建,页面元素的定位,测试点的验证以及自动化测试用例的初探等的学习,可以说我们可以编写自 ...

  9. Eigen教程(4)之Array类和元素级操作

    转载于: https://www.cnblogs.com/houkai/p/6349970.html Array类和元素级操作 为什么使用Array 相对于Matrix提供的线性代数运算,Array类 ...

  10. java使用org.w3c.dom解析XML文档,创建、增删查改,保存,读取,遍历元素等操作

    全栈工程师开发手册 (作者:栾鹏) java教程全解 java使用org.w3c.dom(java dom)解析XML文档,创建.增删查改,保存,读取,遍历元素等操作 在保存文件时需要载入crimso ...

最新文章

  1. import javax.servlet.http.HttpServletRequest 提示错误
  2. orale用户角色管理
  3. ArrayBlockingQueue原理分析-dequeue方法
  4. layui --- [结构优化]参数优化
  5. .NET 十五岁,谈谈我眼中的.NET
  6. 【蓝桥杯每日一练】 巴斯卡三角形(杨辉三角形)
  7. 哥德巴赫猜想用计算机证明,用计算机证明有限数哥德巴赫猜想成立:运行结果...
  8. 常见的几种索引扫描类型
  9. 门槛回归模型_门限回归汇总与空间门槛回归模型简介
  10. JWT 教程_1 SpringBoot与JWT整合
  11. 资源—稀疏编码(sparse coding)
  12. aspx 远程上传服务器,ASP.NET中利用WebClient上传图片到远程服务的方法
  13. 网络爬虫+数据可视化
  14. xmlspy xsd生成java_XmlSpy / XSD 以及 验证
  15. w ndows十空格键怎么按,电脑键盘空格键失灵不能用如何修复
  16. 2021-4-25科学计算器开高次根号
  17. Android能装到电脑上吗,怎么在电脑上装安卓系统
  18. itools电脑显示服务器维护,win10系统iTools无法打开且服务无法启动的具体技巧
  19. 毕业实习笔记——WRF模式入门(Cygwin版)
  20. matlab绘制收益率曲线并计算风险收益率VaR(Value At Risk)

热门文章

  1. *【CodeForces - 791B】Bear and Friendship Condition (图论,判断完全图,dfs乱搞或带权并查集)
  2. false shell 判断_六、Shell流程控制-if判断语句
  3. ls mac 显示最近修改日期_如何在Mac上按日期排序文件 | MOS86
  4. 打开软件就遍历桌面和D盘的软件名通过UDP广播的方式发出。服务器监听指定的端口可以获得文件夹名称。不会暴露自己的IP
  5. mats显存测试软件linux环境,Mats显存检测软件下载-Mats显存检测软件最新版下载-微侠手游网...
  6. 图像 理想低通滤波_图像处理之滤波(下)
  7. 剑指offer:18-21记录
  8. 链表的代码实现【数据结构F】
  9. 李牛(Linux)打包
  10. VIM使用系列之一——配置VIM下编程和代码阅读环境