Beispiel #1
0
    def do_start(self, args, **kwargs):
        param = change_osloobj_to_paras(args)
        self.output_file = param.output_file

        self._init_result_file()

        try:
            Task().start(param, **kwargs)
            self._finish()
        except Exception as e:
            self._write_error_data(e)
Beispiel #2
0
    def do_start(self, args, **kwargs):
        param = change_osloobj_to_paras(args)
        self.output_file = param.output_file

        try:
            result = Task().start(param, **kwargs)
        except Exception as e:
            self._write_error_data(e)
            LOG.exception("")

        if result.get('result', {}).get('criteria') == 'PASS':
            LOG.info('Task Success')
        else:
            LOG.info('Task Failed')
            raise RuntimeError('Task Failed')
Beispiel #3
0
    def do_start(self, args, **kwargs):
        param = change_osloobj_to_paras(args)
        self.output_file = param.output_file

        result = {}
        LOG.info('Task START')
        try:
            #result = Task().start(param, **kwargs)
            task = VTask()
            task_files, task_args, task_args_fnames, parser = task.pre_start(param, **kwargs)
            task.do_onboard(task_files, task_args, task_args_fnames, parser)
            task.do_benchmark(param, task_files)
        except Exception as e:
            self._write_error_data(e)
            LOG.exception("")
Beispiel #4
0
    def test_report_generate_nsb_simple(self, *args):
        tmpfile = tempfile.NamedTemporaryFile(delete=True)

        args = core.Param({"task_id": [GOOD_TASK_ID], "yaml_name": [GOOD_YAML_NAME]})
        params = change_osloobj_to_paras(args)

        with mock.patch.object(report.consts, 'DEFAULT_HTML_FILE', tmpfile.name):
            report.Report().generate_nsb(params)

        data_act = None
        time_act = None
        keys_act = None
        tree_act = None
        with open(tmpfile.name) as f:
            for l in f.readlines():
                 if "var report_data = {" in l:
                     data_act = ast.literal_eval(l.strip()[18:-1])
                 elif "var report_time = [" in l:
                     time_act = ast.literal_eval(l.strip()[18:-1])
                 elif "var report_keys = [" in l:
                     keys_act = ast.literal_eval(l.strip()[18:-1])
                 elif "var report_tree = [" in l:
                     tree_act = ast.literal_eval(l.strip()[18:-1])

        data_exp = {
            'metric1': [1, 1, 2, 3, 5, 8],
            'metric2': [0, 1, 2, 3, 4, 5],
            'metric3': [8, 5, 3, 2, 1, 1],
            'metric4': [5, 4, 3, 2, 1, 0],
        }
        time_exp = [
            '16:49:26.372662', '16:49:27.374208', '16:49:28.375742',
            '16:49:29.377299', '16:49:30.378252', '16:49:30.379359',
        ]
        keys_exp = [
            'metric1', 'metric2', 'metric3', 'metric4',
        ]
        tree_exp = [
            {'parent': '#', 'text': 'metric1', 'id': 'metric1'},
            {'parent': '#', 'text': 'metric2', 'id': 'metric2'},
            {'parent': '#', 'text': 'metric3', 'id': 'metric3'},
            {'parent': '#', 'text': 'metric4', 'id': 'metric4'},
        ]

        self.assertEqual(data_exp, data_act)
        self.assertEqual(time_exp, time_act)
        self.assertEqual(keys_exp, keys_act)
        self.assertEqual(tree_exp, tree_act)
Beispiel #5
0
    def do_start(self, args, **kwargs):
        param = change_osloobj_to_paras(args)
        self.output_file = param.output_file

        result = {}
        LOG.info('Task START')
        try:
            result = Task().start(param, **kwargs)
        except Exception as e:  # pylint: disable=broad-except
            self._write_error_data(e)

        if result.get('result', {}).get('criteria') == 'PASS':
            LOG.info('Task SUCCESS')
        else:
            LOG.info('Task FAILED')
            raise RuntimeError('Task Failed')
Beispiel #6
0
    def do_start(self, args, **kwargs):
        param = change_osloobj_to_paras(args)
        self.output_file = param.output_file

        LOG.info('Task START')
        try:
            result = Task().start(param, **kwargs)
        except Exception as e:  # pylint: disable=broad-except
            self._write_error_data(e)
            LOG.info('Task FAILED')
            raise
        else:
            if result.get('result', {}).get('criteria') == 'PASS':
                LOG.info('Task SUCCESS')
            else:
                LOG.info('Task FAILED')
                # exit without backtrace
                raise SystemExit(self.EXIT_TEST_FAILED)
Beispiel #7
0
 def do_show(self, args):
     """Show details of a specific scenario type"""
     param = change_osloobj_to_paras(args)
     Scenarios().show(param)
Beispiel #8
0
 def do_list(self, args):
     """List existing scenario types"""
     param = change_osloobj_to_paras(args)
     Scenarios().list_all(param)
Beispiel #9
0
 def do_show(self, args):
     """Show details of a specific test case"""
     param = change_osloobj_to_paras(args)
     Testcase().show(param)
Beispiel #10
0
 def setUp(self):
     super(ReportTestCase, self).setUp()
     self.param = change_osloobj_to_paras({})
     self.param.yaml_name = [FAKE_YAML_NAME]
     self.param.task_id = [FAKE_TASK_ID]
     self.rep = report.Report()
Beispiel #11
0
 def do_remove(self, args):
     """Remove a plugin."""
     param = change_osloobj_to_paras(args)
     Plugin().remove(param)
Beispiel #12
0
 def do_remove(self, args):
     '''Remove a plugin.'''
     param = change_osloobj_to_paras(args)
     Plugin().remove(param)
Beispiel #13
0
 def do_install(self, args):
     """Install a plugin."""
     param = change_osloobj_to_paras(args)
     Plugin().install(param)
Beispiel #14
0
 def do_install(self, args):
     '''Install a plugin.'''
     param = change_osloobj_to_paras(args)
     Plugin().install(param)
Beispiel #15
0
 def do_start(self, args, **kwargs):
     param = change_osloobj_to_paras(args)
     Task().start(param, **kwargs)
Beispiel #16
0
 def do_list(self, args):
     '''List existing test cases'''
     param = change_osloobj_to_paras(args)
     Testcase().list_all(param)
Beispiel #17
0
 def do_list(self, args):
     '''List existing runner types'''
     param = change_osloobj_to_paras(args)
     Runners().list_all(param)
Beispiel #18
0
 def do_generate(self, args):
     """Generate a report."""
     param = change_osloobj_to_paras(args)
     report.Report().generate(param)
Beispiel #19
0
 def do_show(self, args):
     '''Show details of a specific runner type'''
     param = change_osloobj_to_paras(args)
     Runners().show(param)
 def do_generate(self, args):
     """Start a benchmark scenario."""
     param = change_osloobj_to_paras(args)
     Report().generate(param)
Beispiel #21
0
    def test_report_generate_nsb_simple(self, *args):
        tmpfile = tempfile.NamedTemporaryFile(delete=True)

        args = core.Param({
            "task_id": [GOOD_TASK_ID],
            "yaml_name": [GOOD_YAML_NAME]
        })
        params = change_osloobj_to_paras(args)

        with mock.patch.object(report.consts, 'DEFAULT_HTML_FILE',
                               tmpfile.name):
            report.Report().generate_nsb(params)

        data_act = None
        time_act = None
        keys_act = None
        tree_act = None
        with open(tmpfile.name) as f:
            for l in f.readlines():
                if "var report_data = {" in l:
                    data_act = ast.literal_eval(l.strip()[18:-1])
                elif "var report_time = [" in l:
                    time_act = ast.literal_eval(l.strip()[18:-1])
                elif "var report_keys = [" in l:
                    keys_act = ast.literal_eval(l.strip()[18:-1])
                elif "var report_tree = [" in l:
                    tree_act = ast.literal_eval(l.strip()[18:-1])
        data_exp = {
            'metric1': [{
                'x': '16:49:26.372662',
                'y': 1
            }, {
                'x': '16:49:27.374208',
                'y': 1
            }, {
                'x': '16:49:28.375742',
                'y': 2
            }, {
                'x': '16:49:29.377299',
                'y': 3
            }, {
                'x': '16:49:30.378252',
                'y': 5
            }, {
                'x': '16:49:30.379359',
                'y': 8
            }],
            'metric2': [{
                'x': '16:49:26.372662',
                'y': 0
            }, {
                'x': '16:49:27.374208',
                'y': 1
            }, {
                'x': '16:49:28.375742',
                'y': 2
            }, {
                'x': '16:49:29.377299',
                'y': 3
            }, {
                'x': '16:49:30.378252',
                'y': 4
            }, {
                'x': '16:49:30.379359',
                'y': 5
            }],
            'metric3': [{
                'x': '16:49:26.372662',
                'y': 8
            }, {
                'x': '16:49:27.374208',
                'y': 5
            }, {
                'x': '16:49:28.375742',
                'y': 3
            }, {
                'x': '16:49:29.377299',
                'y': 2
            }, {
                'x': '16:49:30.378252',
                'y': 1
            }, {
                'x': '16:49:30.379359',
                'y': 1
            }],
            'metric4': [{
                'x': '16:49:26.372662',
                'y': 5
            }, {
                'x': '16:49:27.374208',
                'y': 4
            }, {
                'x': '16:49:28.375742',
                'y': 3
            }, {
                'x': '16:49:29.377299',
                'y': 2
            }, {
                'x': '16:49:30.378252',
                'y': 1
            }, {
                'x': '16:49:30.379359',
                'y': 0
            }],
            'myhostname.cpu_value.cpu.system.0': [{
                'x': '16:49:27.3837',
                'y': 193798
            }, {
                'x': '16:49:28.3837',
                'y': 193800
            }, {
                'x': '16:49:29.3837',
                'y': 193801
            }],
            'myhostname.cpu_value.cpu.user.0': [{
                'x': '16:49:27.3836',
                'y': 324050
            }, {
                'x': '16:49:28.3836',
                'y': 324051
            }, {
                'x': '16:49:29.3836',
                'y': 324054
            }],
            'myhostname.cpufreq_value.cpu.system.0': [{
                'x': '16:49:27.3837',
                'y': 193798
            }, {
                'x': '16:49:28.3837',
                'y': 193800
            }, {
                'x': '16:49:29.3837',
                'y': 193801
            }],
            'myhostname.cpufreq_value.cpu.user.0': [{
                'x': '16:49:27.3836',
                'y': 324050
            }, {
                'x': '16:49:28.3836',
                'y': 324051
            }, {
                'x': '16:49:29.3836',
                'y': 324054
            }],
            'myhostname.intel_pmu_value.cpu.system.0': [{
                'x': '16:49:27.3837',
                'y': 193798
            }, {
                'x': '16:49:28.3837',
                'y': 193800
            }, {
                'x': '16:49:29.3837',
                'y': 193801
            }],
            'myhostname.intel_pmu_value.cpu.user.0': [{
                'x': '16:49:27.3836',
                'y': 324050
            }, {
                'x': '16:49:28.3836',
                'y': 324051
            }, {
                'x': '16:49:29.3836',
                'y': 324054
            }],
            'myhostname.virt_value.cpu.system.0': [{
                'x': '16:49:27.3837',
                'y': 193798
            }, {
                'x': '16:49:28.3837',
                'y': 193800
            }, {
                'x': '16:49:29.3837',
                'y': 193801
            }],
            'myhostname.virt_value.cpu.user.0': [{
                'x': '16:49:27.3836',
                'y': 324050
            }, {
                'x': '16:49:28.3836',
                'y': 324051
            }, {
                'x': '16:49:29.3836',
                'y': 324054
            }],
            'myhostname.memory_value.cpu.system.0': [{
                'x': '16:49:27.3837',
                'y': 193798
            }, {
                'x': '16:49:28.3837',
                'y': 193800
            }, {
                'x': '16:49:29.3837',
                'y': 193801
            }],
            'myhostname.memory_value.cpu.user.0': [{
                'x': '16:49:27.3836',
                'y': 324050
            }, {
                'x': '16:49:28.3836',
                'y': 324051
            }, {
                'x': '16:49:29.3836',
                'y': 324054
            }]
        }
        time_exp = [
            '16:49:26.372662',
            '16:49:27.374208',
            '16:49:27.3836',
            '16:49:27.3837',
            '16:49:28.375742',
            '16:49:28.3836',
            '16:49:28.3837',
            '16:49:29.377299',
            '16:49:29.3836',
            '16:49:29.3837',
            '16:49:30.378252',
            '16:49:30.379359',
        ]
        keys_exp = sorted([
            'metric1',
            'metric2',
            'metric3',
            'metric4',
            'myhostname.cpu_value.cpu.system.0',
            'myhostname.cpu_value.cpu.user.0',
            'myhostname.cpufreq_value.cpu.system.0',
            'myhostname.cpufreq_value.cpu.user.0',
            'myhostname.intel_pmu_value.cpu.system.0',
            'myhostname.intel_pmu_value.cpu.user.0',
            'myhostname.virt_value.cpu.system.0',
            'myhostname.virt_value.cpu.user.0',
            'myhostname.memory_value.cpu.system.0',
            'myhostname.memory_value.cpu.user.0',
        ])
        tree_exp = [{
            'parent': '#',
            'text': 'metric1',
            'id': 'metric1'
        }, {
            'parent': '#',
            'text': 'metric2',
            'id': 'metric2'
        }, {
            'parent': '#',
            'text': 'metric3',
            'id': 'metric3'
        }, {
            'parent': '#',
            'text': 'metric4',
            'id': 'metric4'
        }, {
            'id': 'myhostname',
            'parent': '#',
            'text': 'myhostname'
        }, {
            'id': 'myhostname.cpu_value',
            'parent': 'myhostname',
            'text': 'cpu_value'
        }, {
            'id': 'myhostname.cpu_value.cpu',
            'parent': 'myhostname.cpu_value',
            'text': 'cpu'
        }, {
            'id': 'myhostname.cpu_value.cpu.system',
            'parent': 'myhostname.cpu_value.cpu',
            'text': 'system'
        }, {
            'id': 'myhostname.cpu_value.cpu.system.0',
            'parent': 'myhostname.cpu_value.cpu.system',
            'text': '0'
        }, {
            'id': 'myhostname.cpu_value.cpu.user',
            'parent': 'myhostname.cpu_value.cpu',
            'text': 'user'
        }, {
            'id': 'myhostname.cpu_value.cpu.user.0',
            'parent': 'myhostname.cpu_value.cpu.user',
            'text': '0'
        }, {
            'id': 'myhostname.cpufreq_value',
            'parent': 'myhostname',
            'text': 'cpufreq_value'
        }, {
            'id': 'myhostname.cpufreq_value.cpu',
            'parent': 'myhostname.cpufreq_value',
            'text': 'cpu'
        }, {
            'id': 'myhostname.cpufreq_value.cpu.system',
            'parent': 'myhostname.cpufreq_value.cpu',
            'text': 'system'
        }, {
            'id': 'myhostname.cpufreq_value.cpu.system.0',
            'parent': 'myhostname.cpufreq_value.cpu.system',
            'text': '0'
        }, {
            'id': 'myhostname.cpufreq_value.cpu.user',
            'parent': 'myhostname.cpufreq_value.cpu',
            'text': 'user'
        }, {
            'id': 'myhostname.cpufreq_value.cpu.user.0',
            'parent': 'myhostname.cpufreq_value.cpu.user',
            'text': '0'
        }, {
            'id': 'myhostname.intel_pmu_value',
            'parent': 'myhostname',
            'text': 'intel_pmu_value'
        }, {
            'id': 'myhostname.intel_pmu_value.cpu',
            'parent': 'myhostname.intel_pmu_value',
            'text': 'cpu'
        }, {
            'id': 'myhostname.intel_pmu_value.cpu.system',
            'parent': 'myhostname.intel_pmu_value.cpu',
            'text': 'system'
        }, {
            'id': 'myhostname.intel_pmu_value.cpu.system.0',
            'parent': 'myhostname.intel_pmu_value.cpu.system',
            'text': '0'
        }, {
            'id': 'myhostname.intel_pmu_value.cpu.user',
            'parent': 'myhostname.intel_pmu_value.cpu',
            'text': 'user'
        }, {
            'id': 'myhostname.intel_pmu_value.cpu.user.0',
            'parent': 'myhostname.intel_pmu_value.cpu.user',
            'text': '0'
        }, {
            'id': 'myhostname.memory_value',
            'parent': 'myhostname',
            'text': 'memory_value'
        }, {
            'id': 'myhostname.memory_value.cpu',
            'parent': 'myhostname.memory_value',
            'text': 'cpu'
        }, {
            'id': 'myhostname.memory_value.cpu.system',
            'parent': 'myhostname.memory_value.cpu',
            'text': 'system'
        }, {
            'id': 'myhostname.memory_value.cpu.system.0',
            'parent': 'myhostname.memory_value.cpu.system',
            'text': '0'
        }, {
            'id': 'myhostname.memory_value.cpu.user',
            'parent': 'myhostname.memory_value.cpu',
            'text': 'user'
        }, {
            'id': 'myhostname.memory_value.cpu.user.0',
            'parent': 'myhostname.memory_value.cpu.user',
            'text': '0'
        }, {
            'id': 'myhostname.virt_value',
            'parent': 'myhostname',
            'text': 'virt_value'
        }, {
            'id': 'myhostname.virt_value.cpu',
            'parent': 'myhostname.virt_value',
            'text': 'cpu'
        }, {
            'id': 'myhostname.virt_value.cpu.system',
            'parent': 'myhostname.virt_value.cpu',
            'text': 'system'
        }, {
            'id': 'myhostname.virt_value.cpu.system.0',
            'parent': 'myhostname.virt_value.cpu.system',
            'text': '0'
        }, {
            'id': 'myhostname.virt_value.cpu.user',
            'parent': 'myhostname.virt_value.cpu',
            'text': 'user'
        }, {
            'id': 'myhostname.virt_value.cpu.user.0',
            'parent': 'myhostname.virt_value.cpu.user',
            'text': '0'
        }]

        self.assertEqual(data_exp, data_act)
        self.assertEqual(time_exp, time_act)
        self.assertEqual(keys_exp, keys_act)
        self.assertEqual(tree_exp, tree_act)
Beispiel #22
0
 def do_generate_nsb(self, args):
     """Generate a report using the NSB template."""
     param = change_osloobj_to_paras(args)
     report.Report().generate_nsb(param)