Web自动化测试原理

发表于:2014-8-12 10:22

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:潇洒的阔爷    来源:51Testing软件测试网采编

  目前有很多Web UI自动化测试框架,如WatiN,Selinimu,WebDriver等,这些框架都可以操作Web中的控件,模拟用户输入,点击等操作,实现Web自动化测试。其实这些工具的原理都一样,都是通过调用IE COM接口和HTMLDOM 对IE浏览器以及WEB测试对象的操作。 本文介绍脱离这些自动化测试框架,通过AutoIT直接使用IE COM接口结合HTML DOM对IE浏览器以及WEB对象进行自动化测试的方法。
  1.IE常用操作
  首先新建一个IE COM对象,配置IE窗口属性,模拟用户同时跳转至相应的页面同时进行相应操作。访问页面时,需要等待页面加载完成后再进行操作。这里我们可以使用IE COM的BUSY属性检查浏览器是否处于加载状态,再进行相应的操作。示例代码如下:
  2.利用DOM操作测试对象
  现在已经会使用IE COM组件来对IE浏览器进行自动化的操作,但是对于浏览器页面中的测试对象IE COM是无法对其进行操作的,这个时候就需要使用HTML DOM来对其进行操作。
  2.1 HTML DOM简介
  HTML DOM是HTML Document Object Model(文档对象模型)的缩写,它将网页中的各个元素都看作一个个对象,从而使网页中的元素也可以被计算机语言获取或者编辑。 常用DOM 属性如下:
  className.同一样式规则的元素用相同的类名。可以通过className快速过滤出一组类似的元素。
  document.用于指向包含当前元素的文档对象。
  id.当前元素的标识。如果文档中包含多个相同id的元素,则返回一个数组。
  innerHTML.用于指向当前元素的开始标记和结束标记之间的所有文本和HTML标签。
  innerText.用于指向当前元素的开始标记和结束标记之间的所有文本和HTML标签。
  offsetHeight, offsetWidth.元素的高度和宽度。
  offsetLeft, offsetTop.当前元素相同对于父亲元素的左边位置和顶部位置。
  outerHTML.当前元素的开始标记和结束标记之间的所有文本和HTML标签。
  outerText.当前元素的开始标记和结束标记之间的所有文本,但不包括HTML标签。
  parentElement.当前元素的父亲元素。
  sourceIndex.元素在document.all集合中的索引(index)。
  style.元素的样式表单属性。
  tagName.当前元素的标签名。
  title.在IE中,代表元素的tool tip文本
  常用DOM方法如下:
  click().模拟用户对当前元素的鼠标点击。
  contains(element).用于判断当前元素是否包含指定的元素。
  getAttribute(attributeName, caseSensitive).返回当前元素所包含的某个属性,参数attributeName为属性名、caseSensitive表示是否大小写敏感。
  setAttribute(attributeName, value, caseSenstive). 设置当前元素的属性。
  常用DOM 集合如下:
  All[].当前元素中包含的所有HTML元素的数组。
  children[].当前元素包含的子元素。
21/212>
《2023软件测试行业现状调查报告》独家发布~

精彩评论

  • zaza9084
    2014-8-13 09:25:44

    不好意思,现在已经添加,您可以清空缓存看看~

  • 向南
    2014-8-12 17:16:51

    这篇文章是转载本人文章:http://lovesoo.org/web-automation-testing-principle.html

    麻烦编辑加上转载链接!

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号