python+selenium+chrome初级自动化操作
例1.
#coding=utf-8 from selenium import webdriver import os,time chromedriver = "C:\Users\AppData\Local\Google\Chrome\chromedriver.exe" ''' environ是一个字符串所对应环境的映像对象; os.environ.keys() 主目录下所有的key os.environ 显示key+内容。 windows: · os.environ['HOMEPATH']:当前用户主目录。 os.environ['TEMP']:临时目录路径。 os.environ[PATHEXT']:可执行文件。 os.environ['SYSTEMROOT']:系统主目录。 os.environ['LOGONSERVER']:机器名。 os.environ['PROMPT']:设置提示符。 linux: os.environ['USER']:当前使用用户。 os.environ['LC_COLLATE']:路径扩展的结果排序时的字母顺序。 os.environ['SHELL']:使用shell的类型。 os.environ['LAN']:使用的语言。 os.environ['SSH_AUTH_SOCK']:ssh的执行路径。 ''' os.environ["webdriver.chrome.driver"] = chromedriver driver = webdriver.Chrome(chromedriver) driver.get("http://baidu.com") time.sleep(3) print (u'窗口最大化') driver.maximize_window() a=driver.title print a time.sleep(1) driver.find_element_by_id('kw').send_keys('selenium') driver.find_element_by_id('su').click() driver.quit()
例2.
#coding=utf-8 from selenium import webdriver import os,time,unittest import log import logging import traceback logger = log.Logger('e:/1/web_log.log',clevel = logging.DEBUG,Flevel = logging.INFO) def f(n): logger.info(n) print n class baidu(unittest.TestCase): def setUp(self): self.chromedriver='C:\Users\li.liu\AppData\Local\Google\Chrome\chromedriver.exe' os.environ['webdriver.chrome.driver']=self.chromedriver self.driver=webdriver.Chrome(self.chromedriver) print u'驱动定义完成' def test_baidu_search(self): u"""百度搜索""" driver = self.driver f(u'打开百度') driver.maximize_window() driver.get('http://baidu.com') time.sleep(2) print u'打开另一个网址' driver.get('http://news.baidu.com') print u'窗口最大化' driver.maximize_window() time.sleep(1) print u'返回上一个网页' driver.back() time.sleep(3) driver.forward() time.sleep(2) driver.back() time.sleep(1) driver.close() driver.quit() def test_baidu_set(self): driver = self.driver driver.get('http://baidu.com') time.sleep(3) driver.find_element_by_id('kw').send_keys(u'测试') driver.find_element_by_id('su').click() time.sleep(2) driver.find_element_by_id('kw1').clear() driver.find_element_by_id('kw').send_keys(u'测试用例') time.sleep(3) print u'关闭浏览器' driver.close() print u'退出浏览器服务' driver.quit() if __name__=="__main__": unittest.main()
a浏览器开发者模式
FireFox——>Firebug前端工具,而对于Chrome浏览器——>右键选择‘审查元素’或者快捷键 F12 ,即可看到一些开发写的code,这对于获取测试对象(测试控件)的某些属性很有帮助。
b浏览器基本操作
浏览器窗口的最大化以及大小设置,以及前进,后退
这里有几点注意:
XXXX.get(URL)转到URL地址
time.sleep(ns) 等待时间
XXXX.back( ) 返回到上一个浏览器
XXXX.forward() 前进到下一个浏览器
XXXX.set_window_size(width,height) width,height 我们可以自己根据需要设置。
XXXX.maximize() 窗口最大化
XXXX.title 得到浏览器的标题
XXXX.quit( ) 浏览器退出
XXXX.close( ) 浏览器关闭
import time —>保证脚本运行的稳定性
browser=webdriver.Chrome() —>调用Chrome浏览器
使用print()语句可以查看脚本是否运行正确