我有一个机器人框架项目,下面的文件夹和文件结构。

logger.py文件如下所示。
def log_into_console():
print("log_into_console() method executed")message_printer.py文件如下所示。
# This line cause the problem. it says "ModuleNotFoundError: No module named 'Lib.Common'"
from Lib.Common.logger import log_into_console
def print_message():
print("print_message() method executed")
log_into_console()我想在我的机器人测试用例中调用上面的print_message()函数,如下所示。
*** Settings ***
Library SeleniumLibrary
Library ../Lib/Util/message_printer.py
*** Test Cases ***
My Test Robot Test Case
print message我的问题是当我执行测试时,它会抱怨它找不到Lib.Common模块。当我执行测试时,我会出错。
D:\WorkSpace\POC\Robot\ExternalLibTest\RobotFiles>robot Test.robot
[ ERROR ] Error in file 'D:\WorkSpace\POC\Robot\ExternalLibTest\RobotFiles\Test.robot' on line 3: Importing test library 'D:\WorkSpace\POC\Robot\ExternalLibTest\Lib\Util\message_printer.p
y' failed: ModuleNotFoundError: No module named 'Lib.Common'
Traceback (most recent call last):
File "D:\WorkSpace\POC\Robot\ExternalLibTest\Lib\Util\message_printer.py", line 3, in <module>
import Lib.Common.logger
PYTHONPATH:
C:\Users\XXX\AppData\Local\Programs\Python\Python37\Scripts\robot.exe
c:\users\XXX\appdata\local\programs\python\python37\python37.zip
c:\users\XXX\appdata\local\programs\python\python37\DLLs
c:\users\XXX\appdata\local\programs\python\python37\lib
c:\users\XXX\appdata\local\programs\python\python37
c:\users\XXX\appdata\local\programs\python\python37\lib\site-packages
==============================================================================
Test
==============================================================================
My Test Robot Test Case | FAIL |
No keyword with name 'print message' found.
------------------------------------------------------------------------------
Test | FAIL |
1 critical test, 0 passed, 1 failed
1 test total, 0 passed, 1 failed
==============================================================================
Output: D:\WorkSpace\POC\Robot\ExternalLibTest\RobotFiles\output.xml
Log: D:\WorkSpace\POC\Robot\ExternalLibTest\RobotFiles\log.html
Report: D:\WorkSpace\POC\Robot\ExternalLibTest\RobotFiles\report.html有人能帮我解决这个问题吗。
发布于 2020-11-30 08:36:04
#1:要解决"ModuleNotFoundError: No模块名为‘Lib.Common’“的错误,请尝试以下一个
from logger import log_into_console
def print_message():
print("print_message() method executed")
log_into_console()由于函数log_into_console位于同一个目录中,所以可以直接使用记录器而不是要获得更多详细信息,请参阅下面的链接https://intellipaat.com/community/9924/call-a-function-from-another-file-in-python#:~:text=If%20you%20want%20to%20call,b)
#2:您可以在机器人文件中进行以下更改,以解决名称为“打印消息”的No关键字找到的错误
*** Settings ***
Library SeleniumLibrary
Library Lib
*** Test Cases ***
My Test Robot Test Case
Lib.message_printer当你尝试这个时,如果你面临任何错误,请告诉我!
https://stackoverflow.com/questions/65035890
复制相似问题