我想开始为我的Python代码编写单元测试,py.test框架听起来比Python捆绑的unittest更好。所以我在我的项目中添加了一个“tests”目录,并在其中添加了test_sample.py。现在我想配置PyCharm来运行“tests”目录中的所有测试。
据称,PyCharm在其测试运行程序中supports py.test。你应该能够create a run/debug configuration运行你的测试,而PyCharm据说有一个"create configuration" dialog box specifically for py.test。但这是他们关于这个主题的全部文档,我在任何地方都找不到这个所谓的对话框。
如果我右键单击项目工具窗口中的目录,我将supposed看到一个“Create<;name>;”菜单项,但以“Create”开头的唯一菜单项是“Create Run Configuration”。好吧,也许文档是错误的,“创建运行配置”听起来确实很有希望。不幸的是,它的子菜单中只有两项是“C:\ mypath…”中的Unittests和“C:\ mypath…”中的Doctests,这两项都不适用——我既不使用unittest也不使用doctest。没有py.test的菜单项。
如果我打开test_sample.py并在编辑器窗口中右键单击,就会得到承诺的“Create<;name>;”菜单项:有“Create‘Unittests in test_sa…’”…,然后是“Run‘Unittests in test_sa…’”和“Debug‘Unittests in test_sa…’”。同样,这都是针对unittest框架的;py.test没有。
如果我试一下菜单项,上面写着“unittest”,我会得到一个对话框,里面有“Name”、“Type”选项,还有一个“Tests”组框,里面有“Folder”、“Pattern”、“Script”、“Class”和“Function”选项,等等。这听起来和添加configuration for Python Unit Test的对话框完全一样,也不像configuration for py.test对话框中应该显示的“Name”、“Test to run”和“Keywords”选项。对话框中没有任何内容可以切换我要添加的测试框架。
我正在使用Python 3.1.3和pytest 2.0.3的Windows上的PyCharm 1.5.2。我可以从命令行成功地在测试上运行py.test
,所以这并不像pytest没有正确安装那样简单。
如何配置PyCharm来运行py.test测试?
我认为您需要使用工具栏上的Run/Debug配置项。单击它并“编辑配置”(或者使用菜单项“运行”->;“编辑配置”)。在左窗格的“Defaults”部分中有一个“py.test”项,我认为这是您想要的。
我还发现手册与这个用户界面不匹配。希望我已经正确地理解了这个问题,这对我有帮助。
皮查姆2017.3
Preference -> Tools -> Python integrated Tools
-选择py.test
作为Default test runner
。Preference -> Languages&Frameworks -> Django
-设置勾号Do not use Django Test runner
Run/Debug configuration
中清除所有以前存在的测试配置,否则将使用这些旧配置运行测试。Run/Debug Configuration -> Defaults -> Python tests -> py.test -> Additional Arguments
请转到文件| Settings | Tools | Python Integrated Tools并将默认测试运行程序更改为py.test。然后您将得到py.test选项来创建测试,而不是unittest选项。
相关问题 更多 >
编程相关推荐