我一直在接受
没有发现任何测试
Pycharm中的错误,我无法弄清楚为什么我会得到它...这就是我对我的看法point_test.py
:
import unittest import sys import os sys.path.insert(0, os.path.abspath('..')) from ..point import Point class TestPoint(unittest.TestCase): def setUp(self): pass def xyCheck(self,x,y): point = Point(x,y) self.assertEqual(x,point.x) self.assertEqual(y,point.y)
而这point.py
,我正在尝试测试:
import unittest from .utils import check_coincident, shift_point class Point(object): def __init__(self,x,y,mark={}): self.x = x self.y = y self.mark = mark def patched_coincident(self,point2): point1 = (self.x,self.y) return check_coincident(point1,point2) def patched_shift(self,x_shift,y_shift): point = (self.x,self.y) self.x,self,y = shift_point(point,x_shift,y_shift)
我的运行配置有问题吗?我看了这篇 SO帖子,但我仍然感到困惑.我的运行配置目前看起来像这样:
我想我只是明白我可能做错了什么?任何帮助将不胜感激,谢谢!
为了识别测试函数,必须test_
在您的情况下将它们命名xyCheck
为test_xyCheck
:
我知道问题已经过去了一年多,但我遇到了同样的问题,而且该帖子是搜索中的第一个结果.
据我所知,PyCharm(或Intellij Idea Python插件)需要您的测试符合以下条件,如果您希望在目录中运行所有测试时启动它.
测试函数应以"test"开头(不需要下划线)
包含测试的文件也应以"test"开头."测试"(大写T在我的情况下不起作用
我正在使用Intellij IDEA 2016.3.5和Python插件
如果要使用命令行运行测试
python -m unittest
然后你应该添加__init__.py
到测试目录.Python仍然希望您的测试函数名称以"test"开头,并且您测试文件名以"test"开头,但是在文件的情况下,它并不关心第一个"t"是否为大写.TestCase和test_case同样没问题.