selenium自动化测试的安装与配置

1. 什么是selenium?

Selenium 是一个 Web 应用的自动化框架。通过它,我们可以写出自动化程序,像人一样在浏览器里操作web界面。 比如点击界面按钮,在文本框中输入文字 等操作。Selenium 的自动化原理是这样的:

白月黑羽Python3教程

selenium 自动化流程如下:

  1. 自动化程序调用Selenium 客户端库函数(比如点击按钮元素)
  2. 客户端库会发送Selenium 命令 给浏览器的驱动程序
  3. 浏览器驱动程序接收到命令后 ,驱动浏览器去执行命令
  4. 浏览器执行命令
  5. 浏览器驱动程序获取命令执行的结果,返回给我们自动化程序
  6. 自动化程序对返回结果进行处理

2. 安装与配置

(1) 安装客户端库

pip install selenium

(2) 安装浏览器驱动

切记:浏览器驱动 是和 浏览器对应的, 不同的浏览器 需要选择不同的浏览器驱动。

本人使用的是微软最新版推出的edge浏览器,其对应驱动的安装步骤如下:

(2.1) 安装驱动msedgedriver.exe

下载地址:https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/#downloads

选择的版本一定要根据自己的浏览器版本所对应,下载下来的是一个压缩包,解压缩后即可得到一个.exe文件。

(2.2) 导入python环境

我使用的anaconda所携带的python3.6环境,直接将msedgedriver.exe 复制到环境中的scripts目录下即可。

selenium自动化测试的安装与配置_第1张图片

(3) 安装edge浏览器

这个没什么好说的,可以去官网下载(慢),也可以利用第三方的平台,比如腾讯的软件管家等。

但一定要和自己安装的浏览器驱动所配对,比如我的版本:83.0.478.58(64位)

selenium自动化测试的安装与配置_第2张图片

3. 测试

核心代码:

from selenium import webdriver
wd = webdriver.Edge(.exe所在目录位置)
wd.get(测试的页面url)

如果路径、版本配对、环境配置都没问题的话,edge(或者其他)浏览器就会自动的打开对应的页面。

# 基于selenium的自动化测试(模拟用户在浏览器上自动地完成某些行为)
# 主要用于web测试
# 操纵scdn二级搜索

from selenium import webdriver

wd = webdriver.Edge(r"D:\Study\tools\webdriver\edge\msedgedriver.exe")

wd.get("https://blog.csdn.net/qq_39504519")

# 搜索辽宁大学
ele = wd.find_element_by_class_name("input_search")
ele.send_keys("辽宁大学")
ele = wd.find_elements_by_xpath(r'//a[@class="btn-nobg-noborder btn-search"]/img')[0]
print(ele)
ele.click()


# wd控制新跳转的页面
for handle in wd.window_handles:
    wd.switch_to_window(handle)
    if "辽宁大学" in wd.title:
        break

print(wd.title)
ele = wd.find_element_by_css_selector('input.input_search[type="text"]')
# 先清空ele元素中的内容
ele.clear()
# 搜索阿里巴巴
ele.send_keys("阿里巴巴\n")

# 如果想要控制 原来 的页面
# (1)
# for handle in wd.window_handles:
#     wd.switch_to_window(handle)
#     if "qq_" in wd.title:
#         break
#(2)
# mainwindow = wd.current_window_handle
# wd.switch_to_window(mainwindow)

关于一些自动化测试的代码,给大家推荐一个selenium自动化学习的一个网站: http://www.python3.vip/tut/auto/selenium/01/

 

你可能感兴趣的:(selenium,自动化测试,selenium,webdriver,python,selenium,自动化测试)