我正在使用(据我所知)Raspberry Pi特定库(smbus)用于我的项目。我想用pytest在我的机器上和我学校服务器上的gitlab-ci上测试软件。并不重要,但这是一个俱乐部项目而不是家庭作业。
我的环境说明:
我在开发环境中使用Ubuntu 17.04 / PyCharm。 我可以访问的gitlab运行器是基于docker的(我选择环境)。
以上两者都不具备smbus能力或i2c通信能力。
我想知道是否有可能告诉pytest忽略smbus导入而不添加try / except导入?
感谢。
答案 0 :(得分:1)
如果你真的想避免try
/ accept
,你可以让函数返回导入...
def get_smbus():
import smbus
return smbus
smbus = get_smbus()
这使您能够使用模拟库轻松覆盖get_smbus
函数。
但我个人会使用try
/ except
并抓住ImportError
。