【问题标题】:ResourceWarning on closed driver object关闭驱动程序对象的资源警告
【发布时间】:2021-11-11 06:35:29
【问题描述】:

我开始在 Python 中的 Selenium 中使用页面对象设计模式进行自动化测试。

我遇到了一个错误(据我所知),我没有关闭某些资源。
C:\Users\48796\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()

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

【问题讨论】:

    标签: python-3.x selenium mobile automated-tests


    【解决方案1】:

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

    from selenium import webdriver
    

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

    from appium import webdriver
    

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-03-30
      • 2018-10-23
      • 2017-07-29
      • 2016-06-30
      • 2014-06-09
      • 2023-04-04
      • 2013-01-31
      相关资源
      最近更新 更多