python+selenium UI自動化測試遇到的坑匯總


持續更新。。。

1.括號中的文案寫錯,比如社團寫成社區,最好還是在html頁面里定位到元素去粘貼上面的文案,哪怕只有兩個字❗️

self.driver.find_element_by_link_text("社團").click()

2.使用隱式等待,直接報錯,因為隱式等待這判斷這個元素有了,但不會判斷這個元素是不是可點擊(不會判斷屬性),所以要么使用直接等待,要么使用顯式等待⚠️⚠️

from selenium import webdriver
import time


class TestCase():
    #初始化打開瀏覽器的操作
    def setup(self):
        self.drivers=webdriver.Chrome()
        #最大化瀏覽器
        self.drivers.maximize_window()
        #get方法是打開url
        self.drivers.get("https://testerhome.com/")

    #用例結束后,關閉瀏覽器
    def teardown(self):
        self.drivers.quit()

    def test_case(self):
        #find_element_by_link_text找到社團,通過click來點擊進入
        #<p>社團<p>的方式找
        self.drivers.find_element_by_link_text("社團").click()
        #每一個步驟都需要有延遲,這里用到直接等待
        time.sleep(3)
        #找到“霍格沃茲測試學院”,然后點擊
        #如果使用隱式等待,會直接報錯,因為隱式等待這判斷這個元素有了,但不會判斷這個元素是不是可點擊,所以要么使用直接等待,要么使用顯示等待
        self.drivers.find_element_by_link_text("霍格沃茲測試學院").click()
        #通過xpath的方式找到第一個帖子
        self.drivers.find_element_by_xpath("//a[@href='/topics/22287']").click()
        #等待5秒,看是不是真的進入了帖子
        time.sleep(5)

3.pycharm控制台無法運行pytest,但是venv環境可以,另外執行pycharm也可以,就是電腦終端執行pytest命令提示無此命令

解決方案:因為一開始是在venv環境中安裝的pytest,原始環境中找不到這個已經安裝的pytest,環境隔離的問題確實讓人頭疼;

反復卸載安裝pytest還是裝在了原來路徑下,最后安裝的時候加

pip3 install pytest --user,如下圖提示沒有添加環境變量,所以本機原始環境找不到這個pytest,因此vi ~/.bash_profile,將提示的地址添加到環境變量中,重啟后生效:source ~/.bash_profile

 

注意⚠️以后無論裝什么軟件還是直接本機裝,不要用pycharm裝,不然一不小心就會裝進venv環境中 ❗️❗️

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM