我有一个API,其中写有单元测试。问题在于,API不能从终端作为“独立”脚本运行,而必须从自定义框架运行。在该API中,有一个函数基本上会调用unittest.main()
,但是如果该函数是从“外部”运行的,则找不到测试用例。对于这种问题有共同的解决方案吗?
答案 0 :(得分:1)
您可以通过传递该模块的名称作为第一个参数(或unittest.main()
)来告诉module=
从另一个模块加载测试。
例如,要使用 current 模块名称,请使用:
unittest.main(__name__)
您可能想study the code that implements this functionality; unittest.main
是TestProgram
class的别名,它使用标准的unittest
API到discover, load and run tests。如果需要更多控制,直接使用API可能会很有用。