在PyCharm中实现对其他测试运行器的支持
我正在开发一个自己的Python测试框架,想在PyCharm中使用。请问这是只能通过实现一个自定义插件来完成,还是有其他更简单的方法可以把我的框架添加到PyCharm的测试运行器中?如果不需要插件,具体应该怎么做?PyCharm和我的框架之间需要怎样的互动?
1 个回答
4
在PyCharm中支持测试框架的代码主要分为两个部分:一个是IDE插件(用Java写的,运行在PyCharm内部),另一个是运行时组件(用Python写的,和你的测试框架结合在一起)。IDE插件负责提供用户界面,让你可以编辑运行配置,生成运行测试的命令行,并显示测试结果。而运行时组件则负责以IDE插件能理解的格式报告测试执行的进度。
我们在运行时和IDE插件之间沟通时,通常使用一种标准格式,就是TeamCity服务消息,这些消息会打印到标准输出流中:
http://confluence.jetbrains.net/display/TCD65/Build+Script+Interaction+with+TeamCity
如果你也使用这些消息格式,就可以重复利用解析输出和显示测试结果的组件。