Example #1
0
 def on_recorder_stop(self):
     '''
     recorder stop time
     '''
     self.results.end_time = Utils.get_datetime_now()
     self.results.duration = Utils.get_date_result(self.results.begin_time, self.results.end_time)
     for suite_name in self.results.summary.keys():
         self.results.summary[suite_name].begin_time = getattr(self.results.details.get(suite_name), "begin_time")
         self.results.summary[suite_name].end_time = getattr(self.results.details.get(suite_name), "end_time")
         self.results.summary[suite_name].duration = getattr(self.results.details.get(suite_name), "duration")
Example #2
0
File: report.py Project: hautof/haf
 def get_template_customer(path_: str) -> None:
     path, template = Utils.get_path(path_)
     j2r = FileSystemLoader(f"{path}")
     j2r_e = Environment(loader=j2r,
                         trim_blocks=True,
                         lstrip_blocks=True,
                         autoescape=True)
     j2r_t = j2r_e.get_template(template)
     return j2r_t
Example #3
0
File: result.py Project: hautof/haf
 def __init__(self, name: str = ""):
     super().__init__()
     self.begin_time = ""
     self.end_time = ""
     self.duration = 0
     self.passed = 0
     self.failed = 0
     self.skip = 0
     self.error = 0
     self.all = 0
     self.suite_name = []
     self.summary = {}
     self.details = {}
     self.name = name
     self.log_dir = ""
     self.version = PLATFORM_VERSION
     self.platform = Utils.get_platform()
Example #4
0
    def run(self, args):
        try:
            self.args = args
            self._init_logging_module(args)
            self.case_name = self.args.name
            self.time_str = Utils.get_time_str()
            self.case_log_dir = f"{args.log_dir}/{self.case_name}/{self.time_str}"
            self.runner_count = args.runner_count if args.runner_count else 1

            self.only_bus(args)

            self._start_bus(local=args.bus_server if args.bus_server else False)
            self._bus_client(args)
            self._init_system_lock(args)
            # this only in server bus
            if not args.bus_server:
                self._init_system_logger(args.log_dir, self.bus_client)

            # only : module
            if args.only_loader:
                self._start_loader(1, self.bus_client)
            elif args.only_runner:
                self._start_runner(self.runner_count, self.case_log_dir, self.bus_client)
            elif args.only_recorder:
                self._start_recorder(self.bus_client, self.runner_count, self.case_log_dir, self.time_str)
            else:
                self._start_loader(1, self.bus_client)
                self._start_runner(self.runner_count, self.case_log_dir, self.bus_client)
                self._start_recorder(self.bus_client, self.runner_count, self.case_log_dir, self.time_str)
            self.start_main()
            self.put_loader_msg(args)
            self.stop_main()
            self._start_web_server(args)

            self.wait_end_signal(args)
        except KeyboardInterrupt as key_inter:
            logger.error(key_inter)
        except FailLoaderException as loader_inter:
            logger.error(loader_inter)
        except FailRecorderException as recorder_inter:
            logger.error(recorder_inter)
        except FailRunnerException as runner_inter:
            logger.error(runner_inter)
        except FailFrameworkException as frame_inter:
            logger.error(frame_inter)
Example #5
0
 def add_result_to_suite(self, result):
     '''
     add result to suite which case belong to.
     '''
     if result.case.bench_name not in self.results.suite_name:
         self.results.suite_name.append(result.case.bench_name)
         case = result.case
         suite = Detail(case.bench_name)
         suite.begin_time = result.begin_time
     else:
         # find suite here
         for suite in self.results.details.values():
             if suite.suite_name == result.case.bench_name:
                 suite = suite
                 break
     suite.end_time = result.end_time
     suite.duration = Utils.get_date_result(suite.begin_time, suite.end_time)
     suite.cases.append(result)
     self.results.details[result.case.bench_name] = suite
Example #6
0
 def test_1(self, params):
     print(f"[{params}]start at", datetime.now().strftime("%H:%M:%S"))
     time_begin = datetime.now()
     print(params)
     data_request = {
         "request_header": {},
         "request_data": {},
         "method": "get",
         "host_port": "www.baidu.com",
         # "url": "/v1/front/keng/?building_id=2&location_id=1"
         "url": ""
     }
     time_temp = datetime.now()
     print(f"1:{datetime.now()-time_begin}")
     self.request.constructor(data_request)
     self.response = Utils.http_request(self.request)
     print(f"2:{datetime.now()-time_temp}")
     assert self.response.code == 200
     print(f"[{params}]end at", datetime.now().strftime("%H:%M:%S"))
     print(f"{datetime.now()-time_begin}")
Example #7
0
 def on_recorder_start(self):
     '''
     recorder start time
     '''
     self.results.begin_time = Utils.get_datetime_now()
Example #8
0
File: main.py Project: hautof/haf
        # here : bus server <- password@host:port
        if args.bus_server:
            if "@" in args.bus_server and ":" in args.bus_server:
                password, temp = args.bus_server.split("@")
                host, port = temp.split(":")
                args.bus_server = [
                    bytes(password, encoding='utf-8'), host,
                    int(port)
                ]

        # here : case <- dir/file
        if args.case:
            case_path = args.case
            args.case = []
            args.case = Utils.load_case_from_dir(case_path)
        # here filter not in config
        if isinstance(args.filter_case, str):
            args.filter_case = args.filter_case.split(',')

        print(args)

        main_program = Program()
        main_program.run(args)
    elif args.all == "init":
        print(args)
        helper = Helper()
        helper.init_workspace()
    elif args.all == "help":
        Helper.print_help()
    else:
Example #9
0
File: result.py Project: hautof/haf
 def on_case_end(self):
     self.end_time = Utils.get_datetime_now()
     self.duration = Utils.get_date_result(self.begin_time, self.end_time)
Example #10
0
File: result.py Project: hautof/haf
 def on_case_begin(self):
     self.begin_time = Utils.get_datetime_now()