Exemplo n.º 1
0
def api_v1_debug():
    # 获取前端传来的数据
    data = request.get_json()
    print('前端传递过来的数据是', data)
    # 数据校验 method和url地址必须要传过来
    method = data.get('method')
    if not method:
        return jsonify({
            'status': 400,
            'message': 'invalid method parameter',
            'data': data
        })
    url = data.get('url')
    if not url:
        return jsonify({
            'status': 400,
            'message': 'invalid url parameter',
            'data': data
        })
    # 对数据做逻辑处理 在servicepython文件中做处理
    server = Service()
    # todo 发起请求之前,变量解析
    # data = server.replace_variable(data)
    # data =server.make_request(data)
    # # 对响应结果做断言
    # data = server.make_assert(data)

    data = server.run(data)

    # 给前端返回数据
    return jsonify({'status': 0, 'message': 'ok', 'data': data})
Exemplo n.º 2
0
def api_v1_trigger():
    # 这里支持GET与POST请求,获取参数方法不同。
    if request.method == 'GET':
        data = request.values.to_dict()
    else:
        data = request.get_json()

    cases = data.get('cases', None)
    if not cases:
        return jsonify({
            'status': 400,
            'message': 'invalid parameter [cases]',
            'data': data,
        })

    try:
        service = Service()
        result = service.trigger(data)
        return jsonify({
            'status': 0,
            'message': 'ok',
            'data': result,
        })
    except Exception as error:
        return jsonify({'status': 500, 'message': str(error), 'data': data})
Exemplo n.º 3
0
def interface_api_v1_list():
    data = request.values.to_dict()
    service = Service()
    return jsonify({
        'status': 0,
        'message': 'ok',
        'data': service.get_interface_list(data)
    })
Exemplo n.º 4
0
def api_v2_search():
    data = request.values.to_dict()
    if 'id' not in data:
        return jsonify({
            'status': 400,
            'message': 'invalid id parameter',
            'data': data
        })

    service = Service()
    data = service.interface_search(data)
    return jsonify({'status': 0, 'message': 'ok', 'data': data})
Exemplo n.º 5
0
def api_v1_suite_delete():
    '''套件删除功能'''
    data = request.get_json()
    case_id = data.get('id')
    if not case_id:
        return jsonify({
            'status': 400,
            'message': 'invalid case_id parameter',
            'data': data
        })
    service = Service()
    data = service.suite_delete(data)
    return jsonify({'status': 0, 'message': 'ok', 'data': data})
Exemplo n.º 6
0
def interface_api_v1_create_suite():
    data = request.get_json()
    if not data.get('case_ids'):
        return jsonify({
            'status': 400,
            'message': 'invalid parameter {case_ids}',
            'data': data
        })
    service = Service()
    result = service.create_suite(data)
    if '不存在' in result:
        return jsonify({'status': 400, 'message': result, 'data': data})
    return jsonify({'status': 200, 'message': '创建成功', 'data': data})
Exemplo n.º 7
0
def api_v1_trigger():
    data = request.values.to_dict()
    case_id = data.get('id')
    if not case_id:
        return jsonify({
            'status': 400,
            'message': 'invalid case_id parameter',
            'data': data
        })

    service = Service()
    data = service.trigger(data)
    return jsonify({'status': 0, 'message': 'ok', 'data': data})
Exemplo n.º 8
0
def interface_api_v1_search():
    data = request.get_json()
    service = Service()
    if not data.get('_id'):
        return jsonify({
            'status': 400,
            'message': 'invalid parameter {_id}',
            'data': data
        })
    return jsonify({
        'status': 200,
        'message': 'ok',
        'data': service.get_interface_info(data)
    })
Exemplo n.º 9
0
def api_v1_update():
    data = request.get_json()

    print('data的值是', data)
    id = data.get('id')
    print('id的值是', id)
    if not id:
        return jsonify({
            'status': 400,
            'message': 'invalid id parameter',
            'data': data
        })
    service = Service()
    data = service.interface_update(data)
    return jsonify({'status': 0, 'message': 'ok', 'data': data})
Exemplo n.º 10
0
def api_v1_save():
    # 获取前端传来的数据
    data = request.get_json()
    print('前端传递过来的数据是', data)
    # 数据校验 method和url地址必须要传过来
    method = data.get('method')
    if not method:
        return jsonify({
            'status': 400,
            'message': 'invalid method parameter',
            'data': data
        })
    url = data.get('url')
    if not url:
        return jsonify({
            'status': 400,
            'message': 'invalid url parameter',
            'data': data
        })
    # 对数据做逻辑处理

    # 给前端返回数据
    try:
        # 把数据保存到数据库中
        id = Service().save_cases(data)
        return jsonify({'status': 0, 'message': 'ok', 'data': id})
    except Exception as e:
        return jsonify({'status': 0, 'message': e, 'data': data})
Exemplo n.º 11
0
def api_v1_suite():
    # 获取前端传来的数据
    data = request.get_json()
    print('前端传递过来的数据是', data)
    team = data.get('team')
    if not team:
        return jsonify({
            'status': 400,
            'message': 'invalid team parameter',
            'data': data
        })
    project = data.get('project')
    if not project:
        return jsonify({
            'status': 400,
            'message': 'invalid project parameter',
            'data': data
        })
    cases = data.get('cases')
    if not cases:
        return jsonify({
            'status': 400,
            'message': 'invalid cases parameter',
            'data': data
        })
    # 给前端返回数据
    try:
        # 把数据保存到数据中
        id = Service().save_suite(data)
        return jsonify({'status': 0, 'message': 'ok', 'data': id})
    except Exception as e:
        return jsonify({'status': 0, 'message': e, 'data': data})
Exemplo n.º 12
0
def interface_api_v1_delete_suite():
    data = request.get_json()
    service = Service()
    if not data.get('id_list'):
        return jsonify({
            'status': 400,
            'message': 'invalid parameter {id_list}',
            'data': data
        })
    result = service.delete_suite(data)
    if result == len(data['id_list']):
        return jsonify({'status': 200, 'message': '删除成功', 'data': data})
    else:
        return jsonify({
            'status': 200,
            'message': f'删除成功{result}个,失败{len(data["id_list"]) - result}个',
            'data': data
        })
Exemplo n.º 13
0
def interface_api_v1_run_suite():
    data = request.get_json()
    # 为了能让flask的g对象进入,service对象生成必须在视图函数里而不是全局声明
    service = Service()
    if not data.get('id_list'):
        return jsonify({
            'status': 400,
            'message': 'invalid parameter {id_list}',
            'data': data
        })
    report_id = service.trigger(data)
    if report_id:
        return jsonify({
            'status': 200,
            'message': '执行套件成功',
            'data': f'报告ID:{report_id}'
        })
    else:
        return jsonify({'status': 400, 'message': '执行套件失败', 'data': data})
Exemplo n.º 14
0
def api_v1_team_and_project():
    # 获取前端传来的数据
    data = request.values.to_dict()

    # 给前端返回数据
    try:
        # 把数据保存到数据库中
        data = Service().team_and_project(data)
        return jsonify({'status': 0, 'message': 'ok', 'data': data})
    except Exception as e:
        return jsonify({'status': 0, 'message': e, 'data': data})
Exemplo n.º 15
0
def api_v1_debug():
    # get请求使用request.values.to_dict接收
    # post、put、delete使用request.get_json接收
    data = request.get_json()
    print(data)

    method = data['request'].get('method', None)
    if not method:
        return jsonify({
            'status': 400,
            'message': 'invalid parameter [method]',
            'data': data,
        })

    host = data['request'].get('host', None)
    if not host:
        return jsonify({
            'status': 400,
            'message': 'invalid parameter [host]',
            'data': data,
        })

    path = data['request'].get('path', None)
    if not path:
        return jsonify({
            'status': 400,
            'message': 'invalid parameter [path]',
            'data': data,
        })

    try:
        service = Service()
        data = service.execute(data)
        return jsonify({
            'status': 0,
            'message': 'ok',
            'data': data,
        })
    except Exception as error:
        return jsonify({'status': 500, 'message': str(error), 'data': data})
Exemplo n.º 16
0
def api_v1_list():

    if request.method == 'GET':
        data = request.values.to_dict()
    else:
        data = request.get_json()

    try:
        result = Service().list(data)
        return jsonify({
            'status': 0,
            'message': 'ok',
            'data': result,
        })
    except Exception as error:
        return jsonify({'status': 500, 'message': str(error), 'data': data})
Exemplo n.º 17
0
def api_v1_delete():
    # 获取前端传来的数据
    data = request.get_json()
    print('前端传递过来的数据是', data)
    # 数据校验 method和url地址必须要传过来
    id_list = data.get('id_list')
    if not id_list:
        return jsonify({
            'status': 400,
            'message': 'invalid id_list parameter',
            'data': data
        })

    # 给前端返回数据
    try:
        # 把数据从数据库中删除
        id = Service().delete(data)
        return jsonify({'status': 0, 'message': 'ok', 'data': id})
    except Exception as e:
        return jsonify({'status': 0, 'message': e, 'data': data})
Exemplo n.º 18
0
def interface_api_v1_suite():
    data = request.values.to_dict()
    service = Service()
    data = service.get_suites(data)
    return jsonify({'status': 0, 'message': 'ok', 'data': data})
Exemplo n.º 19
0
def interface_api_v1_debug():
    service = Service()
    data = request.get_json()
    return service.debug(data)
Exemplo n.º 20
0
def interface_api_v1_delete():
    data = request.get_json()
    service = Service()
    service.delete_interface(data)
    return jsonify({'status': 0, 'message': '删除成功', 'data': data['id_list']})
Exemplo n.º 21
0
def api_v1_suite_list():
    data = request.values.to_dict()
    print(data)
    service = Service()
    data = service.suite_list(data)
    return jsonify({'status': 0, 'message': 'ok', 'data': data})