开源的Web应用程序自动测试软件 -- Selenium简介
关键字: Selenium, Java, 自动测试, Web应用
作为模拟真实用户的实际操作的自动化Web应用程序测试软件,至少需要提供以下功能:
以某种方式对Web应用程序的元素进行定位,即通过某种方式描述指定的界面元素,比如文本框,下拉框,文本框,等等。
对Web应用程序的页面元素进行验证或者断言,比如验证窗口的标题,Web页面是否为指定的字符串,文本框的内容是否为期望信息,等等。
模拟真实用户的实际操作,比如模拟键盘输入,鼠标点击,窗口切换,等等。
早期的Web应用程序自动测试软件,采用绝对/相对坐标对Web应用程序的元素进行定位。这种定位方式带用很大的局限性,界面的细微调整,甚至客户端的不兼容都会造成测试软件无法正常进行,需要重新更改测试用例。用于HTML是一种不严格的XML,随着XML解析技术的发展,近年来,有些开源的Web自动测试软件开始对从服务端接受的HTML内容作为XML进行解析,通过分析HTML的内容完成界面元素的定位,验证,断言,甚至模拟用户的真实操作,比如基于Java实现的HtmlUnit和JWebUnit。也有一部分自动化测试工具将编写的JavaScript(或者从其它语言转换),借助JavaScript能够操作Web页面的特性,完成完成界面元素的定位,验证,断言,甚至模拟用户的真实操作,比如基于Java实现的Selenium。
Selenium通过内置的JavaScript脚本操作Web页面,模拟真实用户的实际操作。Selenium支持多种语言编写测试脚本,包括HTML,JAVA,C++等多种主流编程语言。这些编程语言通过规范的命名自动映射为相应的JavaScript方法,可以对Web应用程序进行测试工作。
Selenium首先提供多种方式对Web应用程序的元素进行定位,比如可以根据id, name, javaScript表达式,xpath以及css来定位文本框,,下拉框,文本框。
通过验证(Verify)和断言(Assert)来比较Web应用程序的元素内容是否和期望保持一致。
以Action(动作)模拟真实用户的实际操作,比如通过click,type, open等命令模拟真实用户的鼠标点击,键盘输入和打开链接等实际操作。
http://www.openqa.org/selenium/
后续将陆续介绍Selenium更多的详细信息…







评论排行榜