Python+Selenium入门级自动化测试脚本编写

一、安装Selenium

        安装selenium有三种方式,主要有python下的pip命令安装或者是直接下载安装包进行安装本地文件夹以及直接用pycharm直接安装相应的selenium版本。推荐使用pycharm直接配置安装相应selenium版本(此办法比pip更好用,且不用担心报错以及pip升级问题)

(1)pip安装Selenium

        pip 是一个现代的,通用的 Python 包管理工具。提供了对 Python 包的查找、下载、安装、卸载的功能。

        在dos系统中cd切换到pip所在的安装路径对应的D:\Download\pythonProject\venv\Scripts目录下在进行安装步骤。

pip install selenium==2.48.0

 (2)pycharm直接配置安装相应selenium版本

        在设置中找到解释器那一项,点击加号进行相应程序的搜索,这里可直接搜索selenium进行查询安装,安装自己想要的版本即可,我这里安装的版本为2.48.0

二、下载Firefox火狐浏览器及驱动

        这里我用的是火狐浏览器与火狐浏览器驱动firefoxdriver.exe。

        下载地址:Firefox 火狐浏览器 - 全新、安全、快速 | 官方最新下载

        三大主流浏览器驱动与浏览器之间的对应版本关系查看链接:

Selenium 与 浏览器驱动 - IE 与 EDGE 浏览器驱动下载

把firefoxdriver.exe(现在的火狐驱动改名了)安装到python.exe所在的同一目录下即可。

三、编写自动化脚本

(1)实例练习一

        安装好环境后即可在pycharmIDE中进行编写自动化脚本,

        这里先展示最简单入门基础的调用百度网站的自动化测试脚本,编写完后即可自动打开火狐浏览器打开百度页面以及自动关闭页面。

实现代码如下:

#coding=utf-8                      #确定字符集
import time                          #导入时间
from selenium import webdriver     #导入selenium
driver=webdriver.Firefox()           #取个变量“driver”
url="http:www.baidu.com"            #确定目标地址
driver.get(url)                      #获取get请求
time.sleep(3)                       #时间等待为3秒
driver.quit()                        #退出火狐浏览器

(2)实例练习二

         这里展示的是简单入门基础的调用百度网站搜索的自动化测试脚本,其中有标签元素定位以及窗口大小调节,保存截图并保存在指定路径等操作。

#coding=utf-8
import time
from selenium import webdriver
driver=webdriver.Firefox()
url="http:www.baidu.com"
# driver.maximize_window()     #调用窗口最大化方法
driver.set_window_size(800,900)  #设置窗口固定尺寸:宽600,高400
driver.get(url)
time.sleep(2)
driver.find_element_by_id("kw").send_keys("罗志祥")#ID定位
time.sleep(3)
driver.find_element_by_id("su").click()#ID定位置,然后自动点击。
time.sleep(3)
driver.refresh()
time.sleep(3)
driver.back()  #调用返回方法
driver.implicitly_wait(3)     #设置自动智能等待时间为3秒
driver.forward()   #调用前进方法
time.sleep(3)
print(driver.title)         #打印页面标题
driver.get_screenshot_as_file("D://test.png")  #获取截图并保存
driver.quit()

        上述代码中有id标签用于定位,id获取方式为右键浏览器点击检查元素或直接按f12即可。

猜你喜欢

转载自blog.csdn.net/qq_63010259/article/details/130625921