![](https://img-blog.csdnimg.cn/20200727094555525.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Selenium学习
Selenium的源码学习和实践示例
小单是个程序媛
以前做安卓开发,后面转自动化测试,性格开朗幽默,爱好广泛,偶尔喜欢码码字。
展开
-
Python开发过程中的报错记录
使用了pytesseract的代码运行报错,报错内容如下:pytesseract.pytesseract.TesseractError: (1, 'Error opening data file D:\\Python\\Python38\\tesseract-ocr\\eng.traineddata Please make sure the TESSDATA_PREFIX environment variable is set to your "tessdata" directory. Failed l原创 2020-10-19 18:08:44 · 1056 阅读 · 0 评论 -
Selenium学习之元素属性值、坐标位置、大小
在自动化测试过程中,我们可能需要获取元素的属性值以及坐标位置、大小,那么怎么获取这些信息呢?在这一篇我做了下简单记录。(一)get_attribute 获取元素的给定属性或属性 首先,先来说一下,如何获取元素的给定属性或属性。在Selenium中提供了一个get_attribute()的方法,通过在方法中设置不同的参数内容可以获取到相应的信息,其中给定属性提供了下面三种:(1)获取元素的文本内容:get_attribute(‘textContent’)(2)获取元素的内部H...原创 2020-07-30 22:39:47 · 14856 阅读 · 0 评论 -
Selenium学习之鼠标键盘操作
在测试的时候,我们不可避免地需要用到鼠标操作,那么如何在自动化测试中如何编写代码进行鼠标操作呢?这就不得不提到Selenium中的ActionChains模块,直译过来就是动作链的意思。原创 2020-07-30 22:37:30 · 944 阅读 · 2 评论 -
Selenium学习之显式等待中的EC模块详解
上篇博客讲到了expected_conditions模块,在显式等待WebDriverWait的until和until_not方法中我们经常要用到,它会根据网页标题、网址以及元素是否可见等条件来决定我们是否需要继续等待。我查看了一下源码,根据各大类型对它们做了个整理,方便记忆。 因为要使用 expected_conditions模块中的类,所以第一步肯定是要引入该模块,考虑到引用类时,很多地方都用到了locator定位范围,所以这里我们还要引入必须要引入seleniu...原创 2020-07-26 16:49:19 · 21199 阅读 · 2 评论 -
Selenium学习之三种等待方式
最近在学习Selenium自动化测试的过程中,发现总是容易出现找不到元素的情况,通常这是因为元素还没加载出来,而我们的代码已经执行导致的,那么该怎么解决呢,主要有三种等待方式。(一)time.sleep(固定等待)这个方法我之前有用到过,在脚本调试的时候,设置这个固定等待方便查看结果,但在实际使用的时候是不建议的。虽然它可以自定义等待时间,防止网络不好导致页面加载不出来时,太快去调用代码获取元素。但这个方法有个缺点,那就是网络状态良好时,也必须要等待固定的时间,而且需要在我们每一次想设置等待时间的地原创 2020-07-26 16:42:35 · 766 阅读 · 0 评论 -
Selenium实例化+WebDriver工作原理及协议
1、在SE的执行过程中,一般都会有如下一行代码,代表着引入webdriver模板:from selenium import webdriver因为我用的是Chrome浏览器来进行自动化测试,那么会这样进行一个webdriver的实例化:driver = webdriver.Chrome()2、点击webdriver进入一个__init__.py的文件,可以看到有多个浏览器对应的webriver在这里做了个重命名,比如说火狐浏览器firefox等等,如下图所示:3、点击上图中的“.原创 2020-07-25 15:58:44 · 2165 阅读 · 0 评论 -
Selenium学习之对话框、frame、选择框
1、对话框alert = driver.switch_to.alert #获取对话框(浏览器自带)print(alert.text) #获取对话框的文本内容并打印alert.send_keys("想输入的内容") #在对话框的输入框中输入内容alert.accept() #确认或确认并关闭对话框(无确认/取消按钮的对话框则只会是关闭)alert.dismiss() #取...原创 2020-07-15 18:07:15 · 671 阅读 · 0 评论 -
Selenium学习之元素定位
from selenium import webdriver# 创建 WebDriver 对象,指明使用chrome浏览器驱动wd = webdriver.Chrome(r'D:\ChromeDriver\chromedriver.exe')# 调用WebDriver 对象的get方法 可以让浏览器打开指定网址wd.get('http://127.0.0.1/mgr/sign.html')#UI-0001wd.find_element_by_id('username').clear().原创 2020-07-08 17:59:18 · 507 阅读 · 0 评论