运行测试套件#

运行测试的第一步是安装测试所需的额外依赖项:

pip install -r requirements-dev.txt

PyMC 测试套件使用 pytest 作为测试框架。如果你不熟悉 pytest,可以查看 这个简短的视频系列

在安装了可选依赖项后,您可以开始运行测试。以下是一些您可能希望运行测试套件中某些部分的示例。

注意

运行整个测试套件将花费数小时。因此,我们建议仅运行针对您正在处理的代码库部分的特定测试。

要运行单个文件中的所有测试:

pytest -v tests/model/test_core.py

小技巧

-v 标志是 --verbose 的简写,并打印当前正在运行的测试用例的名称。

通常,您会希望首先专注于几个测试用例。通过使用 -k 标志,您可以过滤与特定模式匹配的测试用例。例如,以下命令运行 test_core.py 中名称包含“coord”的所有测试用例:

pytest -v tests/model/test_core.py -k coord

要获取覆盖率报告,您可以传递 --cov=pymc,可选地使用 --cov-report term-missing 来获取被调用测试访问的行号的打印输出。请注意,由于您没有运行整个测试套件,覆盖率将会很差。但您仍然可以关注您正在处理的代码的特定行号。

pytest -v --cov=pymc --cov-report term-missing tests/<name of test>.py

当你对自己所做的更改有相当的信心时,你可以推送这些更改并开启一个拉取请求。我们的 GitHub Actions 流水线将运行整个测试套件,如果有失败的情况,你可以回到本地机器上运行这些测试。