【发布时间】:2025-12-13 15:55:02
【问题描述】:
我有一个包 - 我们将有创意并称之为 package - 其中有 api 和 dashboard 包,每个包都有一个 tests 模块和各种包含测试的文件。
我正在使用 Django 测试运行程序,而不是在我的运行配置中使用 package.api.tests 和 package.dashboard.tests,我只想使用 package.tests 并让它运行它下面的包中的所有测试。
我在 package 中添加了一个 tests 包,并在 init 中尝试了一些类似 from package.api.tests import * 或使用 all 声明的东西,但没有工作。
有没有办法做到这一点?这不是世界上最烦人的事情,但它是我们所做的每个项目中引入的一个包,并且有“运行 package.tests”的说明会更简单一些,特别是如果我们最终添加更多api 和仪表板之外的包。
【问题讨论】:
-
这有帮助吗? *.com/a/20932450/6505847
-
这确实帮助我解锁了一些方法。我使用的是目录而不是模块名称,因此测试运行程序会在该目录中找到所有内容。完全不用担心包裹。我还意识到
from package.api.tests import *不起作用,因为我在那里的测试也拆分成单独的文件,所以我可以从每个测试文件中导入 *,或者使用我使用的 all目录方法,因为它更简单。欣赏轻推。把它变成答案是否公平,我可以标记为正确?