0


第一个Selenium自动化脚本遇到的坑

刚开始学习Selenium + Python自动化测试总会遇到一些奇奇怪怪的坑

第一个就是语法弃用警告

虽然不影响运行,但是在控制台总是出现红色字体的警告总是觉得不舒服

弃用警告:find_element_by_* 的一系列命令已经被弃用。请使用 find_element() 代替......

这里有两种解决方案

方案一、使用find_element("属性","值")

举例:

    def test_login(self):
        username = self.driver.find_element('name','username')
        username.send_keys('admin')
        pwd = self.driver.find_element('name','pwd')
        pwd.send_keys('123456')
        sleep(2)
        self.driver.find_element('id','submit').click()

方案二:使用find_element("By.属性","值")

这里需要先进行导包

from selenium.webdriver.common.by import By
举例:
        def test_id(self):
            element = self.driver.find_element(By.ID,"kw")
            element.send_keys("adb")
            print(type(element))
            self.driver.find_element(By.ID,"su").click()
            self.driver.find_element(By.ID, "su").click()
            sleep(3)

上面出现的两次click()就是我遇到的第二个坑

在定位元素后click()方法失效,程序没有报错

这里列出三种解决方案

方案一、直接点击两次

self.driver.find_element(By.ID,"su").click()
self.driver.find_element(By.ID, "su").click()

方案二:键盘点击用send_keys(Keys.ENTER)代替click()

这里需要先进行导包

from selenium.webdriver import Keys

修改后代码

  self.driver.find_element(By.ID,"su").send_keys(Keys.ENTER)

方案三:使用js直接去点击

js = 'document.getElementById("su").click();'
self.driver.execute_script(js)

本文转载自: https://blog.csdn.net/bbudha/article/details/127407517
版权归原作者 bbudha 所有, 如有侵权,请联系我们删除。

“第一个Selenium自动化脚本遇到的坑”的评论:

还没有评论