🔥 交流讨论:欢迎加入我们一起学习!
🔥 资源分享:耗时200+小时精选的「软件测试」资料包
🔥 教程推荐:火遍全网的《软件测试》教程
📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!
一、webdriver基本使用命令
from selenium import webdriver # 导入webdriver模块 >>> chrome_obj = webdriver.Chrome() # 打开Google浏览器 >>> chrome_obj.get( "https://www.baidu.com" ) # 打开 网址 >>> chrome_obj.get(r "C:\desktop\text.html" ) # 打开本地 html页面 >>> chrome_obj.title # 获取打开网址 的名字 >>> chrome_obj.current_url # 获取打开网址的 url<br><br>>>> chrome_obj.close() #关闭浏览器窗口 |
二、标签导航
普通 定位标签
# 查找标签 >>> label = chrome_obj.find_element_by_id( "kw" ) >>> label = chrome_obj.find_element_by_name( "wd" ) >>> label = chrome_obj.find_element_by_class_name( "s_ipt" ) >>> label = chrome_obj.find_element_by_tag_name( "imput" ) >>> label = chrome_obj.find_element_by_link_text( "a标签中的内容 准确定位" ) >>> label = chrome_obj.find_element_by_partial_link_text( "a标签中的内容 模糊定位 " ) >>> label = chrome_obj.find_element_by_xpath(“放入 copy 标签中的常css路径”) >>> label = chrome_obj.find_element_by_css_selector(“ input = [ id = 'id_name' / name = 'name_name' / …… / ]") |
标签导航 xpath 标签定位复杂的情况下 考虑使用xpath
XPath即为XML路径语言,它是一种用来确定XML(标准通用标记语言的子集)文档中某部分位置的语言。XPath基于XML的树状结构,有不同类型的节点,包括元素节点,属性节点和文本节点,提供在数据结构树中找寻节点的能力。
View Code
三、 模拟用户操作
>>> label.get_attribute( "type" ) # 显示标签的type属性 name type id placeholder >>> label.tag_name() #获取标签名字 input p form …… >>> label.size >>> label. id >>> chrome_obj.maximize_window() # 窗口最大化 >>> #模拟鼠标悬浮>>> label.click() # 模拟a标签 点击事件 >>> label.send_keys( "模拟搜索内容" ) # 模拟input框 输入内容>>> label.clear() # 清除input标签中 输入的内容>>> chrome_obj.back() # 模拟浏览器 返回上一个浏览页面 |
1、模拟鼠标操作
1 2 3 4 5 | from selenium.webdriver.common.action_chains import ActionChains #导入模块 >>> label = chrome_obj.find_element_by_link_text( "点我 悬浮 显示其他 a标签" ) >>> ActionChains(chrome_obj).move_to_element(label).perform() # 模拟用户悬浮 """ ActionChains(chrome_obj) 用于生成模拟用户行为 ; perform() 执行存储行为 """>>> label_bel = chrome_obj.find_element_by_link_text("我是 a标签,点我页面跳转")>>> label_bel.click() # 模拟用户点击 |
其他鼠标操作
label.countext_lick() # 右击 label.double_click() # 双击 label.drag_and_drop() # 拖动 label.move_to_element # 悬浮 label.click_and_hold # 按鼠标左键一直不动 |
2、模拟键盘操作
from selenium.webdriver.common.keys import Keys # 引入模块 >>> label.send_keys( "input输入的内容" ) >>> label.send_keys(Keys.BACK_SPANCE) # 退格键 >>>label.send_keys(Keys.CONTRL, 'a' ) # 全选 >>>label.send_keys(Keys.CONTRL, 'v' ) # 粘贴 >>>label.send_keys(Keys.CONTRL, 'c' ) # 复制 >>>label.send_keys(Keys.CONTRL,'x‘’) # 剪切 >>>label.send_keys(Keys.ENTER) # 回车 |
四、处理对话框
python脚本实现自动登录
python automatic login
五、控制多窗口
View Code
六、模拟用户自动登录
automatic login
七、模拟用户自动登录 封装接口
automatic login
最后我邀请你进入我们的【软件测试学习交流群:785128166】, 大家可以一起探讨交流软件测试,共同学习软件测试技术、面试等软件测试方方面面,还会有免费直播课,收获更多测试技巧,我们一起进阶Python自动化测试/测试开发,走向高薪之路
作为一个软件测试的过来人,我想尽自己最大的努力,帮助每一个伙伴都能顺利找到工作。所以我整理了下面这份资源,现在免费分享给大家,有需要的小伙伴可以关注【公众号:程序员二黑】自提!