在pycharm中调用 unittest,然后显示 no tests were found是啥原因?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在pycharm中调用 unittest,然后显示 no tests were found是啥原因?相关的知识,希望对你有一定的参考价值。

我用的是最新版的pycharm,和新的Python.按照教科书里的程序原封能不动地抄上去的,可就是运行不了?求大神指点!!已经查了半天了,无果。非常感谢!!
显示no test was found,为什么呢?

我也碰到了,找了半天原因结果是类里面的方法名称没有以test开头。。。。方法名称改成testXXX就好了 参考技术A import unittest
from fullname import get_fullname
class NamesTestCse(unittest.TestCase):
'''测试fullname.py'''
def test_first_last_name(self):
"""能够正确处理像Janis Joplin这样的姓名吗"""
fullname = get_fullname('janis','joplin')
self.assertEqual(fullname,'Janis Joplin')

# 去掉main后面的括号,与书上不同
unittest.main
参考技术B 把用例名称 修改为test_开头的,尝试一下

pytest学习和使用3-对比unittest和pytest脚本在pycharm中运行的方式

3 对比unittest和pytest脚本在pycharm中运行的方式


一句话来说下,unittest和pytest脚本在pycharm中使用基本是一样的。基本是两种:

第一种:直接运行脚本

  • 【运行】-【Run】,选择需要运行的脚本即可

第二种:选择运行框架

  • 【文件】-【设置】-【Python Integrated Tools】-【Default test runner】,选择默认的运行框架即可:
  • 比如选择pytest,鼠标放在类或test开头的方法上,并右键,“运行(U)pytest in xx.py”的字样

  • 写一个unittest框架的脚本,在test_a下新建一个脚本test_u.py,脚本如下:
# -*- coding:utf-8 -*-
# 作者:NoamaNelson
# 日期:2021/9/3 17:13
# 文件名称:test_u.py
# 作用:xxx
# 联系:VX(NoamaNelson)
# 博客:https://blog.csdn.net/NoamaNelson


import unittest

class TestU(unittest.TestCase):
    def test_one(self):
        money = 1000000
        if money > 10000:
            print(f"你已经拥有了{money}块钱,已经很富裕了!")


if __name__ == "__main__":
    unittest.main()
  • 我们先在if __name__ == "__main__":上右键,以pytest运行,发现是可以运行的,如下:
test_u.py::TestU::test_one PASSED             [100%]你已经拥有了1000000块钱,已经很富裕了!

============================== 1 passed in 0.02s ==============================
  • 说明,pytest是兼容unittest的框架的,此时我们把运行默认框架改为unittest,再次运行,发现显示的是“运行(U)unittests in xx.py”的字样

『全栈测试技术,分享,共勉,共进,提升』


以上是关于在pycharm中调用 unittest,然后显示 no tests were found是啥原因?的主要内容,如果未能解决你的问题,请参考以下文章

pytest学习和使用3-对比unittest和pytest脚本在pycharm中运行的方式

Django 2021年最新版教程34python unittest 单元测试 覆盖率检测

pycharm Launching unittests with arguments

PyCharm 以 Python 形式执行包含 Unittest 模块的脚本

pycharm 调用turtle模块时,窗口闪屏不能显示

使用unittest框架,如何单个运行用例?如何生成测试报告?