0
点赞
收藏
分享

微信扫一扫

Windows:web端UI自动化=python+selenium+pycharm框架

搬砖的小木匠 10小时前 阅读 1

本篇写怎么写一个UI自动化代码。mac和Windows是一样的 都是这样写 不过,习惯用Windows了

如果python没有安装可以看我另一篇安装python的教程 先安装python先

下载完python 下载pip

1 安装pip
$ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py  # 下载安装脚本
$ sudo python get-pip.py   # 运行安装脚本

首先下载安装对应的库及浏览器驱动

1python环境下安装selenium

终端输入:pip install selenium

检查selenium是否安装成功:pip lis 或者pip show selenium

2若想使 Selenium 能够调用浏览器,那么必须通过 webdriver 驱动来实现。不同的浏览器需要使用不同驱动程序,下面列出了不同浏览器驱动程序的下载地址:

谷歌浏览器 chromedrive:chromedriver.storage.googleapis.com/index.html

火狐浏览器 geckodriver:Releases · mozilla/geckodriver (github.com)

IE 浏览器 IEDriver:selenium-release.storage.googleapis.com/index.html

2.1检查;浏览器的版本,比如Chrome:帮助-关于Chrome

2.2下载跟浏览器版本相同的驱动(大版本相同即可)

看看刚刚查的谷歌浏览器版本找到对应驱动,比如我的122.0.6261.129 就不可以下载

因为 最高也才114  ,版本对不上会驱动不了,现在得重新下载个低版本的浏览器了

虽然我电脑的64位的,但是并没有64位,所以下载win32就行

2.3将浏览器的安装位置路径添加到环境变量里

下载后,解压,然后将解压出来的chromedriver.exe文件放入一个已经加入环境变量的目录中,或者将chromedriver.exe所在目录加入环境变量。

推荐将chromedriver.exe放入python安装目录下的Scripts目录中,因为该目录之前安装python环境时已经添加到了path环境变量中了,如:我的python安装目录是C:\Users\Administrator\AppData\Local\Programs\Python\Python38,如下图

2.4启动浏览器驱动 :chromedriver

终端输入:chromedriver

最后selenium的基础使用:python自动化框架代码

# 先导入后续要使用的包
import time
from selenium import webdriver
from selenium.webdriver.common.by import By
# 创建一个webDriver的实例,接下来的所有操作都是在该实例上进行,以Chrome实例为例
driver = webdriver.Chrome()
# 窗口最大化
driver.maximize_window()
# 访问百度网址
driver.get("https://www.baidu.com/")
# 通过元素id找到对应元素并输入值进行搜索;此处为在百度搜索框输入selenium并点击查询
driver.find_element(By.ID,"kw").send_keys("selenium")
driver.find_element(By.ID,"su").click()
time.sleep(2)

再者补充一下定位元素方法 及注意的点

注意:

1定位元素的时候需要确定唯一性,可以在检查页面搜索它是不是唯一的。

2当页面内存在多个相同的定位特征值时,则定位方法默认会返回第一个符合条件的元素。

3定位原则:无论使用哪一种元素定位方法,都必须先保证期特征能够代表对应元素在当前页面的唯一性。

元素定位方法

1利用元素定位:先看id 再看name 其次是class

通过ID定位:使用元素的唯一ID进行定位。

 通过Name定位:使用元素的name属性进行定位。

 通过Class Name定位:使用元素的class属性进行定位。

通过Tag Name定位:使用元素的标签名进行定位。

2超链接定位 :Link Text 全部文本信息、Partial Link Text 部分文本信息

通过Link Text定位:使用链接文本进行定位(适用于<a>标签)。

 通过Partial Link Text定位:使用部分链接文本进行定位。

3路径定位:XPath路径

通过XPath定位:使用元素在HTML结构中的路径进行定位。XPath是一种强大的定位方法,可以精确定位元素。

其他说明:路径(相对路径)/绝对路径 ,最后full,属性,属性与逻辑结合, 属性与层级结合,属性包含,理由元素文本

4选择器定位:CSS选择器。

其他说明: id选择器 class选择器 属性选择器 元素选择器 层级选择器 属性选择器

拓展1:录制脚本

使用Selenium IDE

安装 在浏览器的拓展和主题 搜Selenium IDE  (去chrome的拓展和主题居然让我更新浏览器先 重新找能直接安装的包)

下载地址:下载适用于Chrome的Selenium IDE 3.17.2 CRX文件 - Crx4Chrome

在别的地方下载好的拓展包导入chrome浏览器:打开扩展程序,把包拉进来就行

使用方法:点击图标启动工具——点击Record a new test in a new project 选第二个——填写工程名——填写要录制的项目地址   带协议头的请求地址:"https://www.baidu.com"——操作   点击停止录制按钮——填写测试名称——可以降低回放速度 ——导出脚本功能 Tests ——选择熟悉语言 Export ——放桌面用编辑器打开查看脚本,编辑器就是之前说安装的Notepad++ 

 

拓展2:其他操作

1自己写的基础代码 可以在PyCharm中设置自定义代码模板(Live Templates),后面直接使用

全选,点击codo/tools ——save as live template ....忘记了

移除:File——settings ——搜 live ——live templates ——点击 -号移除

2代码快速复制:Ctrl +D

快速移动:shift + alt + ↓ 键盘上下箭头

举报

相关推荐

0 条评论