Selenium 是最流行的自动化测试工具,提供一整套的解决方案,其中webdriver remote方式比较灵活,浏览器可以指定本地或远程。部署也简单,在浏览器端运行java服务,客户端测试用例可以用 Java、Ruby、PHP、Python 编写。
测试服务器:
下载地址: http://selenium.googlecode.com/files/selenium-server-standalone-2.20.0.jar
java -jar selenium-server-standalone-2.20.0.jar
Ruby:
Ruby使用watir-webdriver接口。
测试代码:
require "watir-webdriver"
require "selenium/webdriver/remote/capabilities"
browser = Watir::Browser.new :remote, :url => "http://localhost:4444/wd/hub", :desired_capabilities => Selenium::WebDriver::Remote::Capabilities.chrome
browser.goto("www.tudou.com")
browser.text_field(:id => 'email').set 'test'
browser.text_field(:id => 'pwd').set '1234'
browser.button(:class => 'lg_b').click
puts browser.text.include? 'SHH'
browser.li(:id, "myTudouNav").fire_event("onmouseover")
browser.a(:xpath, ".//*[@id='myTudouNav']/div/ul/li[12]/a").click
puts browser.text.include? 'SHH'
js = <<JS
$('.logo').css('border', '1px solid red');
JS
browser.execute_script js
browser.close
安装watir-webdriver:
1. 安装ruby 1.9.3。下载地址:http://rubyinstaller.org/downloads/
2. 安装watir-webdriver。
> gem update --system --no-rdoc --no-ri
> gem install watir-webdriver --no-rdoc --no-ri
4. 安装chromedriver,用于支持chrome。 下载地址:http://code.google.com/p/chromedriver/downloads/list
PHP:
PHP使用facebook的php-webdriver接口。
测试代码:
require_once 'php-webdriver/__init__.php';
$wd_host = 'http://localhost:4444/wd/hub';
$web_driver = new WebDriver($wd_host);
$session = $web_driver->session('chrome');
$session->open('http://www.tudou.com');
$session->element('css selector', '#email')->value(array('value' => str_split('test')));
$session->element('css selector', '#pwd')->value(array('value' => str_split('1234')));
$session->element('css selector', '.lg_b')->click('');
echo preg_match('/SSH/s', $session->source()) ? 'ok' : 'error';
$element = $session->element('id', "myTudouNav");
$session->moveto(array('element' => $element->getID()));
$session->element('xpath', ".//*[@id='myTudouNav']/div/ul/li[12]/a")->click('');
$script = <<<JS
$('.logo').css('border', '1px solid red');
JS;
$session->execute(array(
'script' => $script,
'args' => array(),
));
$session->close();
php-webdriver 下载地址:
https://github.com/facebook/php-webdriver
Python:
测试代码:
from selenium import webdriver
from selenium.webdriver.remote.command import Command
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
browser = webdriver.Remote('http://localhost:4444/wd/hub', DesiredCapabilities.CHROME);
browser.get("http://www.tudou.com/");
browser.find_element_by_css_selector("#email").send_keys("test")
browser.find_element_by_css_selector("#pwd").send_keys("1234")
browser.find_element_by_css_selector("input.lg_b").click()
element = browser.find_element_by_css_selector("#myTudouNav")
browser.execute(Command.MOVE_TO, {'element': element.id})
browser.find_element_by_xpath(".//*[@id='myTudouNav']/div/ul/li[12]/a").click()
js = "$('.logo').css('border', '1px solid red');";
browser.execute_script(js)
browser.close()
selenium python安装方法:easy_install –U selenium
参考文档(有些网站需要翻X):
http://openqa.org/
http://seleniumhq.org/
http://watir.com
https://github.com/watir/watir-webdriver
http://code.google.com/p/selenium/
http://17test.info/
http://www.ibm.com/developerworks/cn/java/j-lo-rubytesting/
http://www.ibm.com/developerworks/cn/opensource/os-cn-watir/
http://www.facebook.com/notes/facebook-engineering/watir-to-webdriver-unit-test-frameworks/10150314152278920
http://itreallymatters.net/post/10991877834/facebook-watir-and-testing
淘宝automan介绍:
http://qa.taobao.com/wp-content/uploads/2011/06/AutomanUserMenuZH-CN.pdf
JsonWire协议:
http://code.google.com/p/selenium/wiki/JsonWireProtocol#Command_Reference
分享到:
相关推荐
Python Webdriver 自动化测试实战 Python Webdriver 是一个流行的自动化测试框架,它可以模拟用户的操作来测试 Web 应用程序。本文将详细介绍 Python Webdriver 自动化测试实战的知识点。 测试模型 Python ...
Python WebDriver 自动化测试实战 Python WebDriver 是一款功能强大且广泛应用于自动化测试的工具。本文档将对 Python WebDriver 自动化测试实战进行详细的介绍和分析。 测试模型 在自动化测试中,测试模型是指...
** WebDriver 自动化测试 Selenide** WebDriver是一个开源的、跨平台的API,它允许程序员控制Web...通过其强大的功能和简洁的API,Selenide极大地提高了测试的效率和质量,是进行WebDriver自动化测试的理想选择。
Webdriver自动化测试ChromeDriver应用,用于python selenium库
根据给定文件的信息,本文将深入探讨Python WebDriver在自动化测试中的应用,并重点讲解测试模型以及如何通过模块化改进测试脚本。以下是对标题和描述中所述知识点的详细说明。 ### Python WebDriver 自动化测试...
这是一个WebUI自动化测试框架,由webdriver中文社区创办人土豆(本人技术笔名)所创建,该web自动化测试框架是用java语言编写的,基于selenium webdriver 的开源自动化测试框架,该框架结合了testng,selenium,webdriver...
python selenium的三大webdriver:chromedriver.exe、geckodriver.exe和IEDriverServer.exe。我目前使用的浏览器版本chrome73,firefox64.0.2,以及IE 11.
自动化测试:Selenium webdriver学习笔记 C#版 在本篇笔记中,我们将讨论 Selenium webdriver 的自动化测试中的对象定位方法。对象定位是自动化测试中非常重要的一步骤,它决定了我们的测试脚本是否能够正确地找到...
### Webdriver自动化测试详解 #### 一、自动化测试概述 自动化测试是指将人为驱动的测试行为转换为机器执行的过程。这种转变旨在通过自动化工具来执行预定义的测试案例,从而达到减少人工错误、提高测试效率的目的...
通过使用WebDriver,可以编写自动化测试脚本,以确保应用程序按预期工作。 Python是一种广泛使用的高级编程语言,它具有简洁的语法和强大的库支持,非常适合自动化脚本编写。将Python与Selenium WebDriver结合起来...