Selenium 学习
奔跑的芒果果
这个作者很懒,什么都没留下…
展开
-
selenium验证码处理方式
处理验证码的方式:1.通过第三方图片识别文字的工具缺:准确率比较低,可能不到30%2.通过第三方网页识别验证码优:准确度比较高。几乎100%缺:收费3.设置一个万能验证码4.在测试环境中屏蔽掉验证码5.绑定ip地址6.读取cookie和缓存7.在输入验证码前,加入一个固定时间等待,手动输入验证码如何查看系统是否存在万能验证码?1.明确开发人员写的源代码的位置2.为了看开懂发人员的代码,必须了解MVC设计模式M:模型层,主要用于和数据库打交道V.原创 2021-05-28 10:41:30 · 821 阅读 · 0 评论 -
2021-5-25学习记录-窗口切换
1.点击链接出现多个窗口的情况下,务必记得切换窗口后再继续下面的操作,不然所有的操作都会默认在第一个网页窗口new_window = driver.window_handles[-1]driver.switch_to.window(new_window)原创 2021-05-26 11:11:38 · 81 阅读 · 0 评论 -
2021-05-26多个下拉框时怎么定位元素
如果出现下面这种多个下拉框,但并不是每个下拉框都有自己的固定id,name时,我们可以用class_name或者tag_name选择符合条件的所有页面元素,然后根据下标来选择第几个from selenium.webdriver.support.select import Select#选择收货人所在省份province = driver.find_element_by_id("add-new-area-select")Select(province).select_by_visible.原创 2021-05-26 11:05:53 · 498 阅读 · 0 评论 -
selenium中的8种页面元素定位方式
1.iddriver.find_element_by_id()2.namedriver.find_element_by_name()优点:id,name易于定位元素,大多数属性值是唯一的缺点:很多元素没有id和name属性3.class_namedriver.find_element_by_class_name()4.tag_namedriver.find_element_by_tag_name()优点:几乎所有的元素都有class_name和tag_name,缺原创 2021-05-25 10:33:06 · 1308 阅读 · 0 评论 -
selenium常用处理alert的方法
1.点击“确定”按钮:driver.switch_to.alert.accept()2.点击“取消”按钮:driver.switch_to.alert.dismiss()3.获取文本信息:driver.switch_to.alert.text注:处理弹出框时,隐式等待不起作用。隐式等待判断的是页面的加载,点击确认按钮,弹出框出来后,页面并没有刷新过手动设置等待时间time.sleep(3)...原创 2021-05-24 11:00:38 · 454 阅读 · 0 评论 -
selenium中等待页面加载的几种方法
1.隐式等待(需要网页不断加载时,可以用这个)driver.implicitly_wait(5)优点:可以自动判断需要等待多久,括号中的5代表的是最大等待时间, 隐式等待只需要在声明driver之后写一次,影响后面所有的代码缺点:判断的是网页的加载,只可用于网页出现刷新时2.显示等待WebDriverWait结合ExpectedCondition 需要的元素出现后才会继续执行from selenium import webdriverfrom selenium.webdr原创 2021-05-24 11:34:59 · 3788 阅读 · 0 评论 -
如何打开一个网页做自动化测试
#1.打开浏览器from selenium import webdriverchrome=webdriver.Chrome()#2.输入网址chrome.get("https://www.baidu.com")#3.输入关键字chrome.find_element_by_id("kw").send_keys("51testing")#4.点击“百度一下”按钮chrome.find_element_by_id("su").click()注意:webdriver.Chrome()中.原创 2021-05-08 13:29:32 · 421 阅读 · 0 评论