python+selenium+Chrome Web自动化测试进阶学习1
环境安装(mac)
1.python3.7 (网上教程一堆)+pycharm(写python的工具)
2.selenium3.141.0
pip install selenium=3.141.0
安装完成后查看一下selenium是否安装成功
pip show selenium
3.ChromeDriver
先查看一下Chrome的版本 点击浏览器右上角三个点->设置->关于Chrome
然后去这个网址下寻找对应的chromedriver下载
http://npm.taobao.org/mirrors/chromedriver/
放到/usr/local/bin
终端输入vim ~/.bash_profile添加环境变量
export PATH=$PATH:ChromeDriver
别忘记使文件生效
source ~/.bash_profile
打开pycharm
写点代码试试呢
from selenium import webdriver
driver = webdriver.Chrome()
driver.get("https://www.baidu.com")
报错就这样写试试呢
from selenium import webdriver
#路径是你放Chromedriver的地方
driver = webdriver.Chrome('/Users/user/PycharmProjects/AutoTest/chromedriver')
driver.get("https://www.baidu.com")
然后运行 就可以自动打开百度页面
写个验证 看看打开的是不是百度的页面 跳转的是否成功
from selenium import webdriver
from selenium.webdriver.support import expected_conditions as EC
driver = webdriver.Chrome('/Users/user/PycharmProjects/AutoTest/chromedriver')
driver.get("https://www.baidu.com")
title=EC.title_is(u'百度一下,你就知道')
#返回类型为Boolean值
print(title(driver))
#关闭浏览器
driver.quit()
运行结果:
from selenium import webdriver
from selenium.webdriver.support import expected_conditions as EC
driver = webdriver.Chrome('/Users/user/PycharmProjects/AutoTest/chromedriver')
driver.get("https://www.baidu.com")
title=EC.title_is(u'百度一下,你就知道')
print(title(driver))
#其中expected_conditions模块,提供了text_to_be_present_in_element提供了text_to_be_present_in_element_value判断元素的value值
locator = ('class name', 'mnav')
text = u"新闻"
result = EC.text_to_be_present_in_element(locator, text)(driver)
print(result)
# 下面是失败的案例
text1 = u"新闻告诉"
result1 = EC.text_to_be_present_in_element(locator, text1)(driver)
print(result1)
locator2 = ("id", "su")
text2 = u"百度一下"
result2 = EC.text_to_be_present_in_element_value(locator2, text2)(driver)
print(result2)
driver.quit()