【问题标题】:In my POM structure, I get error ModuleNotFoundError: No module named 'pages'在我的 POM 结构中,出现错误 ModuleNotFoundError: No module named 'pages'
【发布时间】:2018-10-27 12:00:47
【问题描述】:

我使用下面的代码在测试文件中导入页面对象。

from pages.login.login_page import LoginPage

我在所有文件夹中也有__init__ 文件。 仍然当我运行测试代码时,我得到错误ModuleNotFoundError: No module named 'pages'

POM
-pages
--login
---login_page.py
-tests
--login
---login_test.py

这就是我的代码的结构。我的virtualenv 在运行测试时处于活动状态。

如果我使用from Code.POM.pages.logon.login_page import LoginPage,那么它可以工作,但我不想使用父目录。

【问题讨论】:

    标签: python-3.x selenium-webdriver pom.xml


    【解决方案1】:

    我想出了办法

    POM
    -__init__.py
    -pages
    --login
    ---login_page.py
    -tests
    --login
    ---login_test.py
    

    __init__.py 文件中我添加了行

    import sys
    sys.path.append('/path/to/Code/POM/')
    

    它开始工作了。

    注意:每个文件夹都有__init__.py 文件,但这里我展示了一个 仅应在其中写入额外代码的文件。

    【讨论】:

    • 谁能建议我更好的解决方案,我不需要在__init__.py文件中编写代码。
    • 我也有同样的问题。我试图遵循这个答案,但这对我没有帮助。可以添加您在解决方案中应用的确切特定解决方案吗?
    猜你喜欢
    • 1970-01-01
    • 2021-03-13
    • 1970-01-01
    • 1970-01-01
    • 2018-12-05
    • 1970-01-01
    • 2022-10-13
    • 2022-08-14
    • 2021-05-20
    相关资源
    最近更新 更多