PyCharm 在Mac OS系统中无法进入单元测试

本文介绍在PyCharm环境下,MacOS系统中遇到的单元测试模式无法启动问题。通过调整测试框架从Nosetest到Unittest,解决了运行配置冲突,实现了成功的单元测试。
部署运行你感兴趣的模型镜像

PyCharm 在Mac OS系统中无法进入单元测试模式

问题

  今天从Clion开发环境切换到PyCharm,准备使用Python版的OpenCV重现一篇Paper的算法模型。由于本人对Python的用法和Pycharm单元测试还不熟悉,在即将进行算法测试的时候,遇到了比较多的问题。
  其中一个问题就是:当触发TestMethod的左上角的Run/Debug按钮之后,PyCharm无法进入测试模式,对应的调试信息和结果也没有显示出来。而在对应的Windows系统下却能成功进入。我使用的PyCharm版本是2018.3

进入单元测试模式
在这里插入图片描述

  • 这时候产生了类似于以上的一些运行配置。

分析

   PyCharm可以使用多种测试框架进行单元测试。我们平常想对短程序进行测试时,习惯在.py文件底下顺手撸上一个main函数写上一些测试数据,然后开始测试。当Run操作执行后,PyCharm会自动创建一个Run Configuration保存程序的运行模式。
传统的Main入口启动方式

  PyCharm可以基于多种测试框架进行单元测试。常见的是unitest、pytest、Nosetest等。在Mac OS系统的PyCharm默认使用了Nosetest作为其单元测试的框架。理论上,任何一款已经被IDE集成的框架应该都可以进行测试。奇怪的是,依旧产生了我在文章开头描述的问题。

解决

  因为无法确定是否是在启用新的测试模式时,导致了新配置跟原有运行配置的冲突。我把旧的运行配置文件全部删除,并且将PyCharm的测试框架从默认的Nosetests切换到Unitests。具体操作如下:

  • 首先把PyCharm使用的测试框架切换到unitests

根据Setting–>Tools–>Python Intergrated Tools 导航进入到以下设置

在这里插入图片描述
找到Default test Runner 切换测试运行器,下拉选择unitests
在这里插入图片描述

  • 之后,清除有关测试代码的一切运行配置,比如之前利用main函数创建入口Run Configuration

选择你要删除的运行配置

在这里插入图片描述

  • 清除完毕,重新运行单元测试。可以看到,由于切换了测试框架,原本的“Run Nosetests for test_r…” 已经变为“Run Unittests for test_r…”

在这里插入图片描述

  • 运行测试成功,控制台成功打印了调试的打印信息和测试结果
    在这里插入图片描述

关于unitests框架的在PyCharm的配置和使用,请看官方文档:

https://www.jetbrains.com/help/pycharm/creating-tests.html

unitests的接口文档:

https://docs.python.org/3/library/unittest.html

您可能感兴趣的与本文相关的镜像

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值