selenium
我是丸子丫
菜鸡测试工程师
展开
-
Appium实战各种报错及解决方案
Encountered internal error running command: UnknownError: An unknown server-side error occurred while processing the command. Original error: Could not proxy command to the remote server. Original error: socket hang up运行命令时遇到内部错误:UnknownError:在处理命令时发生了未知原创 2022-01-10 17:25:31 · 5097 阅读 · 5 评论 -
禅道登录举例:Python+Selenium+PageObject模式详解 (一)
禅道举例,PageObject框架优化过程1、封装公共类BasePage2、封装ElementdataUtils,读取Excel中的元素属性3、封装LogUtils,打印日志4、各模块之间的调用详解及登录场景举例原创 2022-01-10 17:19:17 · 3046 阅读 · 0 评论 -
Python自定义路径格式:OSError: [Errno 22] Invalid argument报错解决方案
将时间指定格式化后,文件名不支持":",与Windows文件命名规范需保持一致原创 2021-12-14 13:16:15 · 2209 阅读 · 0 评论 -
Python+Selenium+Unittest+HTMLTestRunner线性自动化框架实战详细教程
大部分公司项目管理工具都为禅道,此篇以禅道登录进行举例一、创建包和目录1、common:存放公共方法,如测试执行前的操作(打开浏览器)、测试执行后的操作(关闭浏览器)、登录等2、config:一般用于存放ini配置文件3、report:用于存放HTML测试报告4、test_cases:测试用例目录5、run_all.py:用于执行所有测试用例的文件二、各目录的编写方法1、首先编写单独的测试用例,确定单独模块可执行成功import unittestimport t.原创 2021-12-13 22:02:38 · 1895 阅读 · 1 评论 -
Python+Unittest - discover()构建不同目录下的用例
1、执行指定路径的所有用例unittest.defaultTestLoader.discover()方法2、执行指定类的指定用例unittest.TestLoader()方法原创 2021-12-09 18:36:29 · 2114 阅读 · 1 评论 -
Python+Selenium UI自动化 - Unittest+HTMLTestRunner生成测试报告以及忽略用例
1、HTMLTestRunner2、unittest.main(verbosity= N)用法3、verbosity+TextTestRunner将测试结果写入文本文件,控制台仅打印输出语句原创 2021-12-09 13:19:51 · 1129 阅读 · 0 评论 -
Python+Selenium UI自动化 - Unittest构建测试套件
一、执行所有用例:1、直接unittest.main()2、套件名称 = unittest.TestLoader().loadTestsFromTestCase(类名)3、套件名称 =unittest.TestLoader().loadTestsFromModule(模块名称)二、执行指定模块的指定类中的一条或多条用例1、套件名称.addTest(类名.方法名)2、套件名称 = unittest.TestLoader().loadTestsFromName('模块名.类名.方法名')原创 2021-12-08 18:39:53 · 285 阅读 · 0 评论 -
Python+Selenium UI自动化 - Unittest基本使用语法、断言、执行顺序
1、Unittest语法规则及示例2、Unittest断言语法3、Unittest用例执行顺序原创 2021-12-08 00:13:02 · 1886 阅读 · 0 评论 -
Python+Selenium UI自动化 - cookie处理方法及适用场景
1、手动登录系统后,F12查看页面cookies的值,键值对的形式写入代码中2、打开验证码页等待一段时间,手工输入用户名密码验证码,driver.get_cookies()语法获取cookies值,直接从返回结果中复制3、将cookies写入Excel中,再读取Excel中的cookies原创 2021-12-07 18:19:15 · 1451 阅读 · 0 评论 -
Python+Selenium UI自动化 - 调用JS代码
1、上下滚动2、给属性加边框3、移除属性4、修改属性原创 2021-12-07 15:29:33 · 2145 阅读 · 1 评论 -
Python+Selenium UI自动化 - Select选择下拉框语法
三种方法定位select下拉框①通过索引:Select(select标签值).select_by_index(下标)②通过value值:Select(select标签值).select_by_value('value值')③通过文本:Select(select标签值).select_by_visible_text('文本值')原创 2021-12-07 12:58:29 · 2684 阅读 · 0 评论 -
Python+Selenium UI自动化 - alert/confirm/prompt窗口处理方法
1、alert:提示用户信息只有确认按钮2、prompt:有输入框、确认和取消按钮3、confirm:有确认和取消按钮原创 2021-12-07 00:23:49 · 2920 阅读 · 1 评论 -
Python+Selenium - 练习:打开京东->QQ登录->修改个人信息(含鼠标悬停后选中二级菜单进行点击)
QQ登录京东-修改资料举例覆盖知识点:1、id、name、link定位2、xpath、css定位及相对路径定位3、切入框架(点击账号密码登录页需先切入框架)4、多窗口切换选择句柄(点击账户信息时需定位句柄)5、鼠标悬停(鼠标移入账户信息唤起二级菜单)6、隐式等待、显示等待(文中使用显示等待是为了更清晰的看到脚本效果,可写可不写)原创 2021-12-03 14:27:03 · 929 阅读 · 0 评论 -
Python+Selenium UI自动化-Frame框架定位方法
1、通过下标切换,下标从0开始,从下往上,从左往右2、通过frame的id或name定位3、通过元素路径进行定位,先定位到框架的元素,然后切入框架原创 2021-12-02 00:18:00 · 6881 阅读 · 0 评论 -
Python+selenium UI自动化定位元素方法优先级
1、有id、name属性的,一般都是唯一的2、a标签优先考虑link属性3、优先使用css语法4、若是常规方法定位不到,则需要检查是否有框架或是需要切换页面5、检查是否需要先激活(页面同意弹窗、授权操作等)6、使用层级定位,层级定位的精确度比模糊匹配要高,由下往上找唯一属性原创 2021-12-02 00:03:04 · 4242 阅读 · 0 评论 -
Python+Selenium UI自动化-多窗口处理
举例:同时打开京东多个页面后,点击京东超市页面的山姆会员的店方法:输出所有页面的句柄(相当于窗口的身份证),遍历所有句柄,当句柄页包含某个唯一标识时,则选中停留import timefrom selenium import webdriverfrom selenium.webdriver.support.ui import WebDriverWait#显示等待导包driver = webdriver.Chrome()driver.implicitly_wait(10)#通常写在最前面,全原创 2021-11-29 13:49:50 · 1076 阅读 · 0 评论 -
Python+Selenium UI自动化-定位一组元素
举例:选中所有勾选框import timefrom selenium import webdriverdriver = webdriver.Chrome()driver.implicitly_wait(10)#通常写在最前面,全局生效driver.get('file:///D:/untitled/element_samples.html')driver.maximize_window()#定位网页上所有的input元素inputs = driver.find_elements_by_原创 2021-11-29 13:46:55 · 268 阅读 · 0 评论 -
Python+Selenium UI自动化-等待语法
百度搜索举例import timefrom selenium import webdriverfrom selenium.webdriver.support.ui import WebDriverWait#显示等待导包driver = webdriver.Chrome()driver.implicitly_wait(10)#通常写在最前面,全局生效driver.get('file:///D:/untitled/web.html')driver.maximize_window()#固原创 2021-11-29 13:45:03 · 1437 阅读 · 0 评论 -
Python+Selenium UI自动化-键盘操作
百度搜索举例import timefrom selenium import webdriverfrom selenium.webdriver.common.action_chains import ActionChainsfrom selenium.webdriver.common.keys import Keysdriver = webdriver.Chrome()driver.get('https://www.baidu.com')driver.maximize_window()t原创 2021-11-29 13:44:00 · 352 阅读 · 0 评论 -
Python+Selenium UI自动化-鼠标操作
百度搜索举例需注意,鼠标操作需要导包:from selenium.webdriver.common.action_chains import ActionChainsimport timefrom selenium import webdriverfrom selenium.webdriver.common.action_chains import ActionChainsdriver = webdriver.Chrome()driver.get('https://www.baid原创 2021-11-29 13:42:41 · 328 阅读 · 0 评论 -
Python+Selenium UI自动化-操作语法(clear\submit\click\send_keys)
百度搜索举例import timefrom selenium import webdriverdriver = webdriver.Chrome()driver.get('https://www.baidu.com')driver.maximize_window()time.sleep(2)#常用操作clear\submit\click\send_keysinput_element = driver.find_element_by_id('kw')input_element.sen原创 2021-11-29 13:40:31 · 1555 阅读 · 0 评论 -
Python+Selenium UI自动化-基础定位语法(id,name,class_name,tag_name,link_text)
百度搜索举例import timefrom selenium import webdriverdriver = webdriver.Chrome()driver.get('https://www.baidu.com')driver.maximize_window()time.sleep(2)driver.find_element_by_id('kw').send_keys('丸子')#使用id定位方法driver.find_element_by_name('wd').send_keys原创 2021-11-29 13:38:15 · 405 阅读 · 0 评论 -
Python+Selenium UI自动化-CSS定位语法
百度首页举例import os,timefrom selenium import webdriverdriver = webdriver.Chrome()driver.get('https://www.baidu.com')driver.maximize_window()time.sleep(2)#1、绝对路径driver.find_element_by_css_selector('html body div div div+div+div a+a+a').click()#2、相原创 2021-11-29 13:34:40 · 1200 阅读 · 0 评论 -
Python+Selenium UI自动化-XPATH (百度搜索举例)
应用场景: 1.元素信息过长 2.动态属性元素1、绝对路径 / 遇到同层级多个元素用下标表示,下标从1开始,自顶向下写driver.find_element(By.XPATH,'/html/body/div[1]/div[1]/div[3]/div/div/form/span[1]/input').send_keys('我是丸子')2、相对路径 // 自底向上尝试driver.find_element(By.XPATH,'')3、元素属性定位driver.f...原创 2021-11-10 14:40:17 · 1035 阅读 · 0 评论 -
Python+selenium执行打开浏览器脚本报错解决方案selenium.common.exceptions.SessionNotCreatedException
selenium.common.exceptions.SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version 96报错提示为:这个版本的ChromeDriver只支持Chrome 96版本,当前浏览器版本为95(查看浏览器版本路径:谷歌右上角菜单-帮助-关于Google Chorme)下载一个与自己浏览器版本一致的驱动即.原创 2021-10-27 13:51:02 · 1328 阅读 · 1 评论 -
Pycharm每次新建项目都需重新安装第三方库的解决方案
新建项目后遇到导包不成功 不要急着重新安装 浪费时间,查看File-Setting-当前项目名称查看解释器内容选择之前安装过的项目解释器,即可看到原有安装过的第三方库更换解释器后不再报错...原创 2021-10-27 13:21:49 · 3344 阅读 · 0 评论 -
Firefox火狐浏览器安装selenium IDE插件实现自动化脚本录制教程
使用火狐浏览器做自动化必须安装在默认路径,否则不支持执行自动化脚本1、打开火狐浏览器,进入附加组件添加selenium插件2、安装成功后点击插件唤起创建项目弹窗,命名项目名称输入需要录制的网站地址,拿百度举例此时的在百度网站的操作均会被录制下来点击停止录制后弹出弹窗,为刚刚的录制脚本命名点击回放即开始回放录制时操作的步骤...原创 2021-10-26 19:13:31 · 4074 阅读 · 0 评论