Python 获取名称错误:未在py.test中定义名称“bot\u令牌”

Python 获取名称错误:未在py.test中定义名称“bot\u令牌”,python,pytest,Python,Pytest,我遇到了一个名称错误:当我尝试运行pytest时,没有定义名称“bot_token”,即使我正在导入所有必需的文件,或者很明显可能没有 目录结构: bot/ -src/ --__init__.py --my_bot.py --bot_token.py -tests/ --test-sample.py test-sample.py import src.my_bot import src.bot_token def test ... 我的机器人 import src.bot_token c

我遇到了一个名称错误:当我尝试运行pytest时,没有定义名称“bot_token”,即使我正在导入所有必需的文件,或者很明显可能没有

目录结构:

bot/
-src/
--__init__.py
--my_bot.py
--bot_token.py
-tests/
--test-sample.py
test-sample.py

import src.my_bot
import src.bot_token

def test
...
我的机器人

import src.bot_token

client.run(bot_token.bot_token)

...
bot_token.py

bot_token = 'blahblahblah'
当我尝试运行python3-m pytest时,遇到以下错误:

_________________________________________________ ERROR collecting tests/test_sample.py _________________________________________________
tests/test_sample.py:2: in <module>
    import src.my_bot
src/__init__.py:1: in <module>
    from .my_bot import my_bot
src/my_bot.py:278: in <module>
    client.run(bot_token.bot_token)
E   NameError: name 'bot_token' is not defined
======================================================== short test summary info ========================================================
ERROR tests/test_sample.py - NameError: name 'bot_token' is not defined

如何管理此项?

您正在导入src.bot\u令牌,然后引用bot\u令牌.bot\u令牌。这个名字不存在。尝试在第3行使用src.bot\u令牌或src.bot\u令牌。您正在导入src.bot\u令牌,然后引用bot\u令牌。这个名字不存在。尝试在第3行使用src.bot\u令牌或src.bot\u令牌。

我删除了src。来自src.bot_token,因为文件位于同一目录中,现在错误消息更改为:src/my_bot.py:5:在导入bot_token E模块中nofoundError:没有名为“bot_token”的模块是的,我也不希望这样做。试试我的建议。哦,哇,它奏效了!但是现在我遇到了一个问题,当我用python3 src/my_bot.py运行bot时,我得到了这样一个结果:回溯最近的调用last:File src/my_bot.py,第5行,在import src.bot_token ModuleNotFoundError:没有名为'src'的模块查看有关构造python项目和与pytest集成实践的教程:我删除了src。来自src.bot_token,因为文件位于同一目录中,现在错误消息更改为:src/my_bot.py:5:在导入bot_token E模块中nofoundError:没有名为“bot_token”的模块是的,我也不希望这样做。试试我的建议。哦,哇,它奏效了!但是现在我遇到了这样一个问题:当我用python3 src/my_bot.py运行bot时,我得到了这样一个结果:回溯最近的调用:文件src/my_bot.py,第5行,在import src.bot\u token modulenofounderror中:没有名为“src”的模块请看一下关于构造python项目和与pytest集成实践的教程: