资讯动态

Day21:web自动化(Python+Selenium)

发布时间:2026/10/13 10:23:29 来源:尧图企业网站定制
一、web自动化简介1、什么是web自动化-----用程序来测试软件用代码 / 工具模拟人在浏览器上的操作自动打开网页、点击按钮、输入内容.......2、web 自动化无用论。3、 不是所有项目都适合自动化满足下面条件才划算1. 软件需求变更不频繁2. 项目周期比较长3. 自动化的脚本能够重复利用4、自动化测试介入点------系统测试5、自动化项目的实施过程可行性分析 → 选框架Selenium、RF (Robot Framework) → 需求分析 → 制定计划 → 设计测试用例 → 实现无人值守执行搭配 Jenkins → 生成测试报告 → 持续维护脚本。二、PythonSelenium 环境搭建找微微pythonPychramseleniumchrome(谷歌浏览器驱动)三、Selenium八大元素定位。1、面试题如果元素定位不到你是怎么去分析1. 元素没有加载完成2. Frame 中3. 元素不可以用不可读不可见。4. 动态属性动态的 DIV 层。前提需要定位的元素或它的属性必须要唯一。网页元素就是 HTML 标签对应的页面组件比如输入框、按钮、链接、下拉框、图片、文字块这些是网页的最小组成单元。id,name,class_name,xpath,css,tag_name,link_text,partial_link_text练习自动打开 Chrome 浏览器进入百度网页自动在百度搜索框输入码尚学院属于 Selenium 网页自动化脚本模拟人的操作。from selenium import webdriver from selenium.webdriver.common.by import By #打开浏览器 driver webdriver.Chrome() #加载网页 driver.get(https://www.baidu.com) #定位元素(利于封装) driver.find_element(By.ID,kw).send_keys(码尚学院)2、八大元素定位方法作用通过 8 种不同的查找规则定位网页上的页面元素比如输入框、按钮、超链接等之后才能对元素执行点击、输入、获取文本这类操作。1. By.IDkw用元素的 id 属性去找输入框。百度搜索框 idkw2. By.NAMEwd用元素的 name 属性去找输入框。百度搜索框 namewd​ # 1、id定位 driver.find_element(By.ID,kw).send_keys(码尚学院) # 2、name定位 driver.find_element(By.NAME,wd).send_keys(码尚学院) ​# 3、link_text定位 driver.find_element(By.LINK_TEXT,新闻).click() # 4、partial_link_text定位 driver.find_element(By.PARTIAL_LINK_TEXT,新).click() # 5、xpath定位 # 绝对路径/开头是绝对路径 /html/body/div[1]/div[1]/div[5]/div/div/form/span[1]/input # 相对路径//开头是相对路径 //input 1.相对路径索引定位 //form/span[1]/input //用 xpath 按标签层级找到表单下第一个 span 里的输入框输入 “码尚学院”。 ## driver.find_element(By.XPATH,//form/span[1]/input).send_keys(码尚学院) 2.相对路径属性定位 //input[autocompleteoff] //用 xpath 找到 autocomplete 属性值为 off 的输入框在里面输入 “码尚学院”。 ## driver.find_element(By.XPATH,//input[autocompleteoff]).send_keys(码尚学院) 3.相对路径通配符定位 //*[autocompleteoff] //*[*off] 复制xpath经常会出错不是万能的 4.相对路径部分属性值定位 以开头//*[starts-with(autocomplete,of)] 以结尾//*[substring(autocomplete,2)ff] 包含//*[contains(autocomplete,of)] 5.相对路径文本定位 //span[text()按图片搜索] #6、css定位 #class 是样式名字可以重复所以用 class 定位有可能一次性找到好多个元素。 1. 绝对路径不用 2. 通过 ID 和 Class 定位 3. 通过属性定位 4. 通过部分属性定位 5. 查询子元素定位 6. 查询兄弟节点定位

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑