我想知道整个测试套件执行所花费的时间。在Pytest框架中如何获取。我可以使用pytest <filename> --durations=0
命令获取每个测试用例的执行结果。但是,如何获取整个测试套件的执行时间呢?
使用pytest-sugar
pip install pytest-sugar
安装后运行你的测试,完成测试后会得到类似于Results (10.00s)
的结果。
虽然这不是一个PyTest
的解决方案...
你可能可以自己制作一个计时器!这是我之前做的一个:
from time import time as t
class Timer:
def __init__(self) : self.tstart, self.tend = None, None
def start(self) : self.tstart = t()
def end(self) : self.tend = t()
def getDis(self) : return self.tend - self.tstart
你可以像这样使用它:
n = Timer()
n.start()
# something you want to do
n.end()
print (n.getDis()) # gets the distance between the start and finish
当测量一些非常快的东西时,例如几个import
语句,它可以打印出0.00
。
pytest --durations=3
的东西。 - Nithin Mohan