我想在一个类中测试函数,由于某种原因,我无法像 test _ * 这样命名它们。这是我的班级样子:
class SegmentationSuite:
"""Benchmark for segmentation routines in scikit-image."""
def setup(self):
self.image = np.random.random((400, 400, 100))
self.image[:200, :200, :] += 1
self.image[300:, 300:, :] += 0.5
def time_slic_basic(self):
segmentation.slic(self.image, enforce_connectivity=False)
def peakmem_setup(self):
pass
def peakmem_slic_basic(self):
segmentation.slic(self.image, enforce_connectivity=False)
因此,共有三组函数:time_*
,setup
和peakmem
。查看pytest文档后,我发现https://docs.pytest.org/en/latest/example/pythoncollection.html#changing-naming-conventions
因此,我创建了一个setup.cfg
文件,并在其中添加了以下内容:
[tool:pytest]
python_files=benchmark_*.py
python_classes=*Suite
python_functions=time_*, setup, peakmem*
但它不起作用。
我该怎么做?
谢谢。
答案 0 :(得分:1)
这就是我的做法
python_functions=time_* setup peakmem*
。指定多个用空格分隔的glob模式。