?🔥 交流讨论:欢迎加入我们一起学习!
🔥 资源分享:耗时200+小时精选的「软件测试」资料包
🔥?教程推荐:火遍全网的《软件测试》教程??
📢欢迎点赞 👍 收藏 ?留言 📝 如有错误敬请指正!
UI自动化中的option选项配置
1.option选项配置
? 在UI自动化中打开浏览器前可以加入对浏览器的选项配置,通过设置不同的参数,可以修改浏览器的默认行为,常见的配置(option)操作有以下几种方式。
2.headless(无头模式)
? 所谓浏览器的无头模式headless,就是浏览器在运行时处于后台操作的模式,不会看到浏览器打开,也就不会干扰你手头的工作。对于UI自动化测试都有很大的价值。
? Chrome 的无头模式,通过在打开浏览器前加入 --headless 参数配置即可实现。代码如下:
正常方式打开浏览器代码如下:
from selenium import webdriver ? ? ?# 导入selenium中的webdriver
from time import sleep ? ? ? ? # 导入time模块中的sleepdriver = webdriver.Chrome()
driver.get("https://www.baidu.com") ? ? # 打开百度首页网站
sleep(2) ? ? ? # 等待两秒
driver.find_element_by_id("kw").send_keys("它石软件测试") ? ? # 在百度首页输入框中输入它石软件测试
driver.find_element_by_id("su").click() ? ? # 点击百度一下按钮
sleep(2)
title = driver.title ? ?# 获取标题
print(title) ? ?# 打印标题
driver.quit() ? # 关闭浏览器
使用无头模式(headless)方式打开代码如下:from selenium import webdriver ? ? ?# 导入selenium中的webdriver
from time import sleep ? ? ? ? # 导入time模块中的sleep
chrome_options=webdriver.ChromeOptions() ? ? # 创建chrome_options对象
chrome_options.add_argument('--headless') ? ?# 给chrome_options添加headless参数
driver = webdriver.Chrome(options=chrome_options) ? ? # 将options传递给driver对象
driver.get("https://www.baidu.com") ? ? # 打开百度首页网站
sleep(2) ? ? ? # 等待两秒
driver.find_element_by_id("kw").send_keys("它石软件测试") ? ? # 在百度首页输入框中输入它石软件测试
driver.find_element_by_id("su").click() ? ? # 点击百度一下按钮
sleep(2)
title = driver.title ? ?# 获取标题
print(title) ? ?# 打印标题
driver.quit() ? # 关闭浏览器
3.无痕模式(incognito)
? 当启用浏览器打开网页的时候,可以直接启用无痕模式,省去清理缓存这一步骤。代码如下:
?from selenium import webdriver ? ? ?# 导入selenium中的webdriver
from time import sleep ? ? ? ? # 导入time模块中的sleep
chrome_options=webdriver.ChromeOptions() ? ? # 创建chrome_options对象
chrome_options.add_argument('--incognito') ? ? ?# 添加参数无痕模式
driver = webdriver.Chrome(options=chrome_options) ? ? # 将options传递给driver对象
driver.get("https://www.baidu.com") ? ? # 打开百度首页网站
sleep(2) ? ? ? # 等待两秒
driver.find_element_by_id("kw").send_keys("它石软件测试") ? ? # 在百度首页输入框中输入它石软件测试
driver.find_element_by_id("su").click() ? ? # 点击百度一下按钮
sleep(2)
title = driver.title ? ?# 获取标题
print(title) ? ?# 打印标题
driver.quit() ? # 关闭浏览器
无痕模式界面如图:
?
4.下载设置
?可以通过设置参数选择下载文件的保存路径,代码如下:
from selenium import webdriver # 导入selenium中的webdriver
from time import sleep # 导入time模块中的sleep
chrome_options=webdriver.ChromeOptions() # 创建chrome_options对象
prefs ={"profile.default_content_settings.popups": 0, "download.default_directory": "d:\\"} # 设置下载路径为D盘根目录
chrome_options.add_experimental_option('prefs', prefs) # 浏览器配置项添加参数
driver = webdriver.Chrome(options=chrome_options) # 将options传递给driver对象
driver.get("https://sc.chinaz.com/tupian/210712228480.htm") # 打开百度首页网站
sleep(2) # 等待两秒
driver.find_element_by_xpath('/html/body/div[5]/div[5]/div[1]/div[6]/div[2]/div[1]/div/div[3]/a[1]').click() # 点击福建电信下载按钮
sleep(2)
driver.quit() # 关闭浏览器
?代码执行完成之后,就可以在D盘根目录中查看到下载的文件
??
5.禁止图片加载
? 不加载图片的情况下,可以提升UI自动化的速度。代码如下:
from selenium import webdriver ? ? ?# 导入selenium中的webdriver
from time import sleep ? ? ? ? # 导入time模块中的sleep
chrome_options=webdriver.ChromeOptions() ? ? # 创建chrome_options对象
prefs = {"profile.managed_default_content_settings.images": 2} ?# 添加参数启动时不加载图片
chrome_options.add_experimental_option('prefs', prefs) ?# 浏览器配置项添加参数
driver = webdriver.Chrome(options=chrome_options) ? ? # 将options传递给driver对象
driver.get("https://sc.chinaz.com/tupian/210712228480.htm") ? ? # 打开百度首页网站
sleep(2) ? ? ? # 等待两秒
driver.find_element_by_xpath('/html/body/div[5]/div[5]/div[1]/div[6]/div[2]/div[1]/div/div[3]/a[1]').click() ? ? # 点击福建电信下载按钮
sleep(2)
driver.quit() ? # 关闭浏览器
?? 以上就是UI自动化中option常见选项配置。
最后我邀请你进入我们的【软件测试学习交流群:785128166】, 大家可以一起探讨交流软件测试,共同学习软件测试技术、面试等软件测试方方面面,还会有免费直播课,收获更多测试技巧,我们一起进阶Python自动化测试/测试开发,走向高薪之路
作为一个软件测试的过来人,我想尽自己最大的努力,帮助每一个伙伴都能顺利找到工作。所以我整理了下面这份资源,现在免费分享给大家,有需要的小伙伴可以关注【公众号:程序员二黑】自提!