我正在尝试使用 pytest-benchmark 对我们的 js 包的捆绑过程进行基准测试。为了准确处理目标目录需要清空。我尝试使用 pedantic setup 参数在每次运行时清理它,但这仅在基准测试初始化时运行,而不是在运行之间运行。这是我最后一次尝试的代码:
import shutil
import os
import pytest
def clean_bundles():
print("Cleaning bundles")
shutil.rmtree(os.path.abspath('precompiled'), True)
def bundle(gulpfile):
os.system("gulp --gulpfile %s createBundles" % gulpfile)
def test_bundle(benchmark):
benchmark.pedantic(lambda: bundle("gulpfile.js"), setup=clean_bundles(), rounds=5, iterations=1)
无论如何在每次迭代之间运行干净而不使其成为基准测试结果的一部分?