关闭的驱动程序对象上的 ResourceWarning

ResourceWarning on closed driver object


我开始在 Python.

中使用页面对象设计模式在 Selenium 中进行自动化测试 我遇到一个错误(据我所知),我没有关闭某些资源。
C:\Users796\PycharmProjects\test_page_mobile\venv\lib\site-packages\selenium\webdriver\remote\remote_connection.py:374: ResourceWarning: unclosed <socket.socket fd=512, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0, laddr=('127.0.0.1', 55580), raddr=('127.0.0.1', 4723)>
return self._request(command_info[0], url, body=data)
ResourceWarning: Enable tracemalloc to get the object allocation traceback

我真的不明白为什么这个代码连续出现四次:

import unittest
from selenium import webdriver
from src.Pages.MainPage import MainPage


class Test001(unittest.TestCase):

    def setUp(self):
        desired_capabilities = {
           "platformName": "Android",
           "platformVersion": "11",
            "deviceName": "emulator-5554",  # cmd -> adb devices
            "browserName": "Chrome"
        }

        self.driver = webdriver.Remote("http://localhost:4723/wd/hub", desired_capabilities)

    def test_print_title(self):
        main_page = MainPage(self.driver)
        print(main_page.get_title())
    
    def tearDown(self):
        self.driver.close()


if __name__ == '__main__':
    unittest.main()

如您所见,驱动程序正在“拆卸”方法中关闭。我做错了什么? :(

好的,我发现了问题所在。这是进口的。我用了

from selenium import webdriver

但对于 Appium 服务器,我应该使用 Appium Webdriver

from appium import webdriver

它是“Appium-Python-Client”包的一部分(而不是“selenium”)