def get_plans(): """ 获取测试计划列表 :return: """ plans = service.find_all_plan() return make_response(plans)
def get_pending_stop_tasks(): """ 获取预备停止的任务,前端请求停止不会马上停止,而是把任务加在这个列表中 :return: """ tasks = service.find_all_task() pending_stop_task = [] for task in tasks: if task.is_pending_stop(): pending_stop_task.append(task) return make_response(pending_stop_task)
def get_plan_version_pages(): """ 获取版本计划列表 包括删除的 :return: """ versions = service.find_all_version_pages(include_del=True) pages = [] for item in versions: pages.append({ 'version_id': item.version_id, "name": item.version_name, "path": item.path, "pages": service.find_pages_info(item) }) return make_response(pages)
def get_all_task(): """ 获取任务列表 :return: """ tasks = service.find_all_task() new_task = [] expire_task = [] for task in reversed(tasks): new_task.append(task) if task.session_id != session_id and (task.is_pending_stop() or task.is_running()): task.abort() expire_task.append(task) if len(expire_task) > 0: service.update_tasks(expire_task) return make_response(new_task)
def get_waited_task(): """ 获取等待测试的列表 :return: """ # 从数据空获取所有的任务 groups = service.find_all_group() waited_tasks = [] expire_tasks = [] for groupId in groups: # 获取当前groupId的所有task group_tasks = service.find_task_group_by_group_id(groupId) # 筛选正在运行的task running_task = [ t for t in filter(lambda x: x.is_running(), group_tasks) ] if len(running_task) > 0: continue waited_task = None for task in group_tasks: if task.is_waited(): # 判断是不是此次session的等待,有可能上次还是等待中,但是结束了页面,重新发起新的连接,这时候旧的不要了 if task.session_id == session_id: if waited_task is None: waited_task = task else: task.abort() expire_tasks.append(task) if waited_task is not None: waited_tasks.append(waited_task) if len(expire_tasks) > 0: # 过期的任务,更新到数据库中 service.update_tasks(expire_tasks) return make_response(waited_tasks)
def get_appIds(): """ 获取appid列表 :return: """ return make_response(service.find_all_appIds())