matplotlib.testing
¶
matplotlib.testing
¶
用于测试的帮助函数。
matplotlib.testing.compare
¶
用于比较图像结果的实用程序。
-
matplotlib.testing.compare.
comparable_formats
()[源代码]¶ 返回文件格式列表
compare_images
可以在这个系统上比较。返回: - str列表
例如。
['png', 'pdf', 'svg', 'eps']
.
-
matplotlib.testing.compare.
compare_images
(expected, actual, tol, in_decorator=False)[源代码]¶ 比较两个“图像”文件,检查公差范围内的差异。
两个给定的文件名可以指向通过
converter
字典。基础均方根是用calculate_rms
功能。参数: - expectedSTR
预期图像的文件名。
- actualSTR
实际图像的文件名。
- tol浮动
公差(色差,其中255是最大差值)。如果平均像素差大于此值,则测试失败。
- in_decorator布尔
确定输出格式。如果从image_comparison decorator调用,则这应该是真的。(默认值为False)
返回: - 无或dict或str
返回 None 如果图像在给定公差内相等。
如果图像不同,则返回值取决于 in_decorator .如果 in_decorator 如果为true,则返回包含以下条目的dict:
- rms :图像差的RMS。
- 预期 :预期图像的文件名。
- 实际的 :实际图像的文件名。
- diff_image :差异图像的文件名。
- tol :比较公差。
否则,将返回此信息的可读多行字符串表示形式。
实例
img1 = "./baseline/plot.png" img2 = "./output/plot.png" compare_images(img1, img2, 0.001)
matplotlib.testing.decorators
¶
-
class
matplotlib.testing.decorators.
CleanupTestCase
(methodName='runTest')[源代码]¶ 基类:
unittest.case.TestCase
包装纸unittest.TestCase包括清理作业。
创建类的实例,该实例将在执行时使用指定的测试方法。如果实例没有具有指定名称的方法,则引发ValueError。
-
matplotlib.testing.decorators.
check_figures_equal
(*, extensions=('png', 'pdf', 'svg'), tol=0)[源代码]¶ 用于生成和比较两个图形的测试用例的装饰器。
修饰函数必须接受两个关键字参数, fig_test 和 fig_ref ,并在其上绘制测试和参考图像。函数返回后,将保存并比较图形。
这个装修工应该比
image_comparison
为了防止测试套件的规模膨胀。参数: - extensions列表,默认值: [“png”,“pdf”,“svg”]
要测试的扩展。
- tol浮动
高于该阈值的测试视为失败。
实例
查一下电话
Axes.plot
只要一个论点就足以证明它是对的[0, 1, 2, ...]
::@check_figures_equal() def test_plot(fig_test, fig_ref): fig_test.subplots().plot([1, 3, 5]) fig_ref.subplots().plot([0, 1, 2], [1, 3, 5])
-
matplotlib.testing.decorators.
cleanup
(style=None)[源代码]¶ 一个修饰符,用于确保在运行测试之前重置任何全局状态。
参数: - stylestr、dict或list,可选
要应用的样式。默认为
["classic", "_classic_test_patch"]
.
-
matplotlib.testing.decorators.
image_comparison
(baseline_images, extensions=None, tol=0, freetype_version=None, remove_text=False, savefig_kwarg=None, style=('classic', '_classic_test_patch'))[源代码]¶ 将测试生成的图像与中指定的图像进行比较 baseline_images 其他,必须对应
ImageComparisonFailure
将引发异常。参数: - baseline_images列出或无
指定调用生成的图像的名称的字符串列表
Figure.savefig
.如果 None ,测试函数必须使用
baseline_images
夹具,作为参数或pytest.mark.usefixtures
. 只有在使用pytest时才允许使用此值。- extensions无或str列表
要测试的扩展列表,例如。
['png', 'pdf']
.如果 None ,默认为所有支持的扩展名:png、pdf和svg。
当测试单个扩展时,它可以直接包含在传递给的名称中 baseline_images . 那样的话, 扩展 不得设置。
为了避免测试套件的膨胀,我们只包含
svg
或pdf
如果测试依赖于后端,请参见check_figures_equal
装修工)。- tol浮点,默认值:0
高于该阈值的测试视为失败。
由于浮点计算中的预期差异很小,因此在32位系统上,此阈值额外增加了0.06。
- freetype_versionstr或tuple
此测试要通过的预期freetype版本或版本范围。
- remove_text布尔
在比较之前,从图中删除标题和勾选文本。这有助于使基线图像独立于FreeType不同版本之间文本渲染的变化。
这不会删除其他更仔细的文本,例如图例和注释。
- savefig_kwarg双关语
传递给savefig方法的可选参数。
- stylestr、dict或list
要应用于图像测试的可选样式。如果需要,测试本身也可以应用其他样式。默认为
["classic", "_classic_test_patch"]
.