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