定时执行测试用例的简单实现
搭建一个测试平台,自动化执行用例功能是不可或缺的,本文主要介绍一下测试用例定时自动执行的简单实现
- 首先定义一个执行用例的方法
def excuse():
...
# cases是需要执行的所有用例
for case in cases:
# 执行用例
subprocess.call(
'python case/%s' % case.name, shell=True
)
print('本轮测试执行完毕')
- 使用schedule库 进行定时执行
def auto_excuse(excuse_time):
# excuse定时要执行的方法 这里就是执行用例方法
schedule.every().day.at(excuse_time).do(excuse)
while True:
schedule.run_pending()
- 在view中开启一个新的线程, 执行定时任务
def auto_run(request, project_id):
...
def start_auto():
auto_excuse(excuse_time)
# 开启一个新的线程执行定时任务
t = threading.Thread(target=start_auto)
t.setDaemon(True)
# 执行线程
t.start()
...
以上就是用例定时自动执行的简单实现,若在时间间隔上需要更灵活的定制可以考虑使用APScheduler