示例#1
0
def run_test(request):
    """debug single test
    {
        host: str
        body: dict
        project :int
        config: null or dict
    }
    """

    body = request.data["body"]
    config = request.data.get("config", None)
    project = request.data["project"]
    host = request.data["host"]

    if host != "请选择":
        host = models.HostIP.objects.get(name=host,
                                         project=project).value.splitlines()

    if config:
        config = eval(
            models.Config.objects.get(project=project,
                                      name=config["name"]).body)

    summary = loader.debug_api(parse_host(host, loader.load_test(body)),
                               project,
                               name=body.get('name', None),
                               config=parse_host(host, config),
                               user=request.user)

    return Response(summary)
示例#2
0
文件: run.py 项目: zdmd/FasterRunner
def run_testsuite(request):
    """debug testsuite
    {
        name: str,
        body: dict
    }
    """
    body = request.data["body"]
    project = request.data["project"]
    name = request.data["name"]

    testcase_list = []
    config = None

    for test in body:
        test = loader.load_test(test, project=project)
        if "base_url" in test["request"].keys():
            config = test
            continue

        testcase_list.append(test)

    summary = loader.debug_api(testcase_list,
                               project,
                               name=name,
                               config=config)

    return Response(summary)
示例#3
0
def run_testsuite(request):
    """debug testsuite
    {
        name: str,
        body: dict
        host: str
    }
    """
    body = request.data["body"]
    project = request.data["project"]
    name = request.data["name"]
    host = request.data["host"]

    test_case = []
    config = None

    if host != "请选择":
        host = models.HostIP.objects.get(name=host,
                                         project=project).value.splitlines()

    for test in body:
        test = loader.load_test(test, project=project)
        if "base_url" in test["request"].keys():
            config = test
            continue

        test_case.append(parse_host(host, test))

    summary = loader.debug_api(test_case,
                               project,
                               name=name,
                               config=parse_host(host, config),
                               user=request.user)

    return Response(summary)
示例#4
0
def run_test(request):
    """debug single test
    {
        body: dict
    }
    """

    body = request.data["body"]
    summary = loader.debug_api(loader.load_test(body), request.data["project"])
    return Response(summary)
示例#5
0
def run_testsuite(request):
    """debug testsuite
    {
        name: str,
        body: dict
        host: str
    }
    """
    body = request.data["body"]
    project = request.data["project"]
    name = request.data["name"]
    host = request.data["host"]

    test_case = []
    config = None

    timestamp = request.data.pop("timestamp")

    logger_file = log_file + '/' + str(timestamp) + '.log'

    if host != "请选择":
        host = models.HostIP.objects.get(name=host,
                                         project=project).value.splitlines()

    for test in body:
        test = loader.load_test(test, project=project)
        if "base_url" in test["request"].keys():
            config = test
            continue

        test_case.append(parse_host(host, test))

    try:
        summary = loader.debug_api(test_case,
                                   project,
                                   name=name,
                                   config=config,
                                   user=request.user,
                                   log_file=logger_file)
        if summary is None:
            with open(logger_file, 'r') as r:
                msg = r.readlines()
            summary = msg
            return Response({"error": summary})
        return Response(summary)
    except Exception as e:
        return Response({"error": "404"})
    finally:
        '''删除调试脚本的日志文件'''
        delfile(logger_file)
示例#6
0
def run_test(request):
    """debug single test
    {
        host: str
        body: dict
        project :int
        config: null or dict
    }
    测试用例集 单个运行api
    """

    body = request.data["body"]
    config = request.data.get("config", None)
    project = request.data["project"]
    host = request.data["host"]
    timestamp = request.data.pop("timestamp")

    logger_file = log_file + '/' + str(timestamp) + '.log'
    if host != "请选择":
        host = models.HostIP.objects.get(name=host,
                                         project=project).value.splitlines()

    if config:

        config = eval(
            models.Config.objects.get(project=project,
                                      name=config["name"]).body)

    try:

        summary = loader.debug_api(parse_host(host, loader.load_test(body)),
                                   project,
                                   name=body.get('name', None),
                                   config=config,
                                   user=request.user,
                                   log_file=logger_file)

        if summary is None:
            with open(logger_file, 'r') as r:
                msg = r.readlines()
            summary = msg
            return Response({"error": summary})
        return Response(summary)
    except Exception as e:

        return Response({"error": "404"})
    finally:
        '''删除调试脚本的日志文件'''
        delfile(logger_file)
示例#7
0
def run_testsuite(request):
    """debug testsuite
    {
        name: str,
        config: int
        body: dict
    }
    """
    body = request.data["body"]

    testcase_list = []

    for test in body:
        testcase_list.append(loader.load_test(test))

    summary = loader.debug_api(testcase_list, request.data['config'])
    return Response(summary)
示例#8
0
文件: run.py 项目: zdmd/FasterRunner
def run_test(request):
    """debug single test
    {
        body: dict
        project :int
        config: null or dict
    }
    """

    body = request.data["body"]
    config = request.data.get("config", None)
    project = request.data["project"]

    if config:
        config = eval(
            models.Config.objects.get(project=project,
                                      name=config["name"]).body)

    summary = loader.debug_api(loader.load_test(body), project, config=config)

    return Response(summary)