转来的——python webdriver自动化测试初步印象——转来的

python webdriver自动化测试初步印象

以下示例演示启动firefox,浏览google.com,搜索Cheese,等待搜索结果,然后打印出搜索结果页的标题

from selenium import webdriver

from selenium.common.exceptions import TimeoutException

from selenium.webdriver.support.ui import WebDriverWait # available since 2.4.0

from selenium.webdriver.support import expected_conditions as EC # available since 2.26.0

# Create a new instance of the Firefox driver

driver = webdriver.Firefox()

# go to the google home page

driver.get("http://www.google.com")

# find the element that‘s name attribute is q (the google search box)

inputElement = driver.find_element_by_name("q")

# type in the search

inputElement.send_keys("Cheese!")

# submit the form (although google automatically searches now without submitting)

inputElement.submit()

# the page is ajaxy so the title is originally this:

print driver.title

try:

# we have to wait for the page to refresh, the last thing that seems to be updated is the title

WebDriverWait(driver, 10).until(EC.title_contains("cheese!"))

# You should see "cheese! - Google Search"

print driver.title

finally:

driver.quit()

python webdriver自动化测试通过控件xpath定位元素

有一段html代码如下:

现在通过xpath来查找到相应的input元素,代码demo如下:

from selenium.webdriver.common.by import By

#查找所有input元素方法一

inputs = driver.find_elements_by_xpath("//input")

#查找所有input元素方法二

inputs = driver.find_elements(By.XPATH, "//input")

#查找指定的input元素,比如查找name为other的input

inputs = driver.find_element_by_xpath("//input[@name=‘other‘]")

python webdriver自动化测试在window和frame之间切换

from selenium import webdriver

# 启动firefox初始化webdriver

driver = webdriver.Firefox()

1、切换到指定窗口名的窗口,

例如有一段html代码如下

Click here to open a new window

driver.switch_to_window("windowName")

2、当然也可以通过句柄来切换,示例如下

for handle in driver.window_handles:

driver.switch_to_window(handle)

上述代码会遍历,一个个的切换。

3、通过frame名称切换到指定的frame

driver.switch_to_frame("frameName")

4、也可以通过frame的索引来切换

driver.switch_to_frame(0) #切换到第一个frame

python使用selenium rc和webdriver启动不同浏览器的方法

Selenium 1 -启动 Internet Explorer

from selenium import selenium

selenium = selenium("localhost", 4444, "*iexplore", "http://google.com/")

selenium.start()

Selenium 1 - 启动Firefox

from selenium import selenium

selenium = selenium("localhost", 4444, "*firefox", "http://google.com/")

selenium.start()

webdriver - 启动Firefox

from selenium import webdriver

driver = webdriver.Firefox()

webdriver - 启动Chrome

from selenium import webdriver

driver = webdriver.Chrome()

webdriver - 启动Remote

from selenium import webdriver

driver = webdriver.Remote( browser_name="firefox", platform="any")

webdriver - 启动IE

from selenium import webdriver

driver = webdriver.Ie()

备注: 除了启动IE外,webdriver启动其他浏览器均需安装相应浏览器的驱动组件,关于这块的环境搭建请参见

python webdriver自动化测试通过控件css定位元素

有一段html代码如下:

milk
cheese

现在通过css来查找到相应的span元素,代码demo如下:

from selenium.webdriver.common.by import By

#查找css为span元素方法一

cheese = driver.find_element_by_css_selector("#food span.dairy.aged")

#查找css为span元素方法二

cheese = driver.find_element(By.CSS_SELECTOR, "#food span.dairy.aged")

python webdriver自动化测试通过控件 Partial Link Text定位元素

有一段html代码如下:

search for cheese>

现在通过Partial Link Text来查找到相应的a元素,代码demo如下:

from selenium.webdriver.common.by import By

#查找Partial Link Text为a元素方法一

cheese = driver.find_element_by_partial_link_text("cheese")

#查找Partial Link Text为a元素方法二

cheese = driver.find_element(By.PARTIAL_LINK_TEXT, "cheese")

python webdriver自动化测试通过控件link text定位元素

有一段html代码如下:

cheese>

现在通过link text来查找到相应的a元素,代码demo如下:

from selenium.webdriver.common.by import By

#查找link text为cheese元素方法一

cheese = driver.find_element_by_link_text("cheese")

#查找link text为cheese元素方法二

cheese = driver.find_element(By.LINK_TEXT, "cheese")

python webdriver自动化测试通过控件tag name定位元素

有一段html代码如下:

现在通过tag name来查找到相应的iframe元素,代码demo如下:

from selenium.webdriver.common.by import By

#查找tag name为iframe元素方法一

frame = driver.find_element_by_tag_name("iframe")

#查找tag name为iframe元素方法二

frame = driver.find_element(By.TAG_NAME, "iframe")

python webdriver自动化测试通过控件class name定位元素

有一段html代码如下:

Cheddar

Gouda

现在通过class name来查找到相应的div元素,代码demo如下:

from selenium.webdriver.common.by import By

#查找第一个class为cheese的div元素

cheeses = driver.find_elements_by_class_name("cheese")

# 查找所有class为cheese的div元素

cheeses = driver.find_elements(By.CLASS_NAME, "cheese")

python webdriver自动化测试通过控件name定位元素

#导入webdriver

from selenium import webdriver

# 启动firefox初始化webdriver

# ie: driver = webdriver.Ie()

# chrome: driver = webdriver.Chrome()

driver = webdriver.Firefox()

# 访问baidu官网

driver.get("http://www.baidu.com")

# 定位输入框

element= driver.find_element_by_name("wd")

# 打印出来看一下

# 会看到一个内存地址,说明已经找到

print element

# 关闭浏览器、退出webdriver

driver.quit()

python webdriver自动化测试通过控件id定位元素

#导入webdriver

from selenium import webdriver

# 启动firefox初始化webdriver

# ie: driver = webdriver.Ie()

# chrome: driver = webdriver.Chrome()

driver = webdriver.Firefox()

# 访问baidu官网

driver.get("http://www.baidu.com")

# 定位输入框

element = driver.find_element_by_id("kw")

# 打印出来看一下

# 会看到一个内存地址,说明已经找到

print element

# 关闭浏览器、退出webdriver

driver.quit()

python webdriver自动化测试访问某个网址

python webdriver自动化测试访问指定网址示例

#导入webdriver

from selenium import webdriver

# 启动firefox初始化webdriver

# ie: driver = webdriver.Ie()

# chrome: driver = webdriver.Chrome()

driver = webdriver.Firefox()

# 访问google官网

# 记得网址前最好带http

driver.get("http://www.google.com")

时间: 2024-12-23 10:54:22

转来的——python webdriver自动化测试初步印象——转来的的相关文章

构建Python+Selenium2自动化测试环境

初步计划通过Python作为脚本语言,Selenium作为web端的测试工具,目前主要是基于web端来构建的.本节主要记录简单搭建Python+Selenium测试环境的过程,具体如下: 基础环境:windows 7 64bit 1.构建python开发环境,版本为当前最新版本python2.7.5 在python官方网站选择下载最新windows安装包:python-2.7.5.amd64.msi,注意这里选择64bit的.安装完之后,需要在系统的环境变量path中加入C:\Python27,

lettuce webdriver 自动化测试---玩转BDD

行为驱动开发(BDD),依然高大上的矗立在远方,很少被人问津,一方面是BDD的思想不太容易理解,别一方面BDD的资料并不多.中文的资料就更少了. 之前增写过一篇<python BDD 框架之lettuce> 来介绍BDD ,本文将在此基础上通过lettuce 和webdriver来实现自动化测试,感兴趣的测试同学跟我一起装X吧! 下面向读者介绍如何通过lettuce 和 webdriver 结合来编写自动化脚本. 环境配置: ----------------------------------

Python进行自动化测试工具

在自动化测试里Python用途很广,但是市面上测试工具不是很多,这里主要介绍的是一些Python测试的框架 1.单元测试 a.unittest.doctest:Python自带的单元测试框架 b.pyunit:Junit的Python版本 c.pytest.nose.zope.testing:pipy上第三方测试工具 2.Windows GUI测试a.pywinauto: 3.Web自动化测试 a.selenium:web driven b.robot framework:关键字驱动 c.pam

用python做自动化测试--对服务器端的自动化测试(2)-发送端模拟器

python的http client库很多,有httplib, urllib 和urllib2,但这几个用起来还是比较麻烦,requests 是高富帅(http://docs.python-requests.org/en/latest/),接口更简洁,优雅. 支持Json, 很方便设置发送的header, session管理. #!/usr/bin/env python #coding=utf-8 import time,logging,sys,os import pickle import u

Python WebDriver 文件上传(二)

今天补充一种文件上传的方法 主要是因为工作中使用SendKeys方法不稳定,具体方法见: Python WebDriver 文件上传(一) 这种方法直接通过命令行执行脚本时没有问题,可以成功上传,但是如果通过saltstack 远程控制执行时,SendKeys就定位不到窗口了. 所以采用这种新的方式来实现文件上传功能,并完美的解决了这个问题. 具体操作步骤如下: 1.下载工具 AutoIt及使用 AutoIt目前最新是v3版本,这是一个使用类似BASIC脚本语言的免费软件,它设计用于Window

python webdriver测试报告

python webdriver测试报告 即将开始一系列的自动化项目实践,很多公共类和属性都需要提前搞定.今天,解决了测试报告的一些难题,参照了很多博文,最终觉得HTMLTestRunner非常不错,自己也研读了源码,可进行一些自定义的配置. 下面就说一些体会: 一.配置: HTMLTestRunner看了源码才知道作者是:Wai Yip Tung.到底这是哪位大神就不做深究了,至少我很敬佩. 1.下载HTMLTestRunner.py文件:地址http://tungwaiyip.info/so

[转] 用python做自动化测试

用python做自动化测试--序 https://wiki.python.org/moin/PythonTestingToolsTaxonomy 原 使用python进行windows自动化测试(1) http://my.oschina.net/yangyanxing/blog/166838 Python Testing Tools Taxonomy https://wiki.python.org/moin/PythonTestingToolsTaxonomy

用python做自动化测试--对服务器端的自动化测试(2)-更多http client实例

上一篇中只是实现了一个很简单的http client功能,request还提供了keep alive, SSL, 多文件上传,cookie 管理功能,http requests头管理等丰富的功能,只要你浏览器实现的功能,requests里面都支持. #!/usr/bin/env python #coding=utf-8 import requests def login_douban(username, passwd): post_data={'source':'index_nav','form

How to set Selenium Python WebDriver default timeout?

Trying to find a good way to set a maximum time limit for command execution latency in Selenium Python WebDriver. Ideally, something like: ff = webdriver.Firefox() ff.implicitly_wait(10) # seconds ff.get("http://somedomain/url_that_delays_loading&quo