0

我在一个模块(mod1)中有一些功能。我想对它们运行一些单元测试(特别是鼻子测试)。我见过的大多数使用 unittest/nosetests 的介绍似乎只是导入代码以使用from mod1 import func1. 但是,据我所知,我想避免从 mod1 导入的模块 (mod2) 中导入任何代码,这样您就只能直接在 mod1 中测试代码。相反,我应该模拟 mod1 导入的 mod2 中的函数。我是不是很傻,from mod1 import func1不会从 mod2 导入代码?或者是否有其他方法可以导入 func1 以便它不会从 mod2 导入任何代码?非常感谢!

4

1 回答 1

1

这是您的设计决定,而不是 m1 与 m2 交互,因此您有选择

1) Test mod1 with mod2
2) Mock functions in mo2d

但是有一些方法可以避免直接导入查看此代码

https://github.com/django/django/blob/master/django/db/models/loading.py
https://github.com/tangentlabs/django-oscar/blob/master/oscar/core/loading.py

希望这可以帮助您将模块分开一点(如果确实需要)

于 2013-04-11T19:30:47.607 回答