def _test_sender_error_type(self): dmp_file = self.write_crash_dir_entry('error_type.dmp', '') meta_file = self.write_fake_meta('error_type.meta', 'fake', dmp_file, complete=False) utils.write_keyval(meta_file, {"error_type": "system-issue"}) utils.write_keyval(meta_file, {"done": "1"}) self._set_force_official(True) # also test this self._set_mock_developer_mode(True) # also test "boot_mode" field result = self._call_sender_one_crash(report=meta_file) if not result['error_type']: raise error.TestFail('Missing error type') if result['error_type'] != 'system-issue': raise error.TestFail('Incorrect error type "%s"' % result['error_type']) # Also test force-official override by checking the image type. Note # that it will not be "dev" even on a dev build because # /tmp/crash-test-in-progress will exist. if not result['image_type']: raise error.TestFail('Missing image type when forcing official') if result['image_type'] != 'force-official': raise error.TestFail('Incorrect image type ("%s" != ' '"force-official")' % result['image_type']) # Also test "Boot mode" field. For testing purposes, it should # have been set to "dev" mode. if not result['boot_mode']: raise error.TestFail('Missing boot mode when mocking dev mode') if result['boot_mode'] != 'dev': raise error.TestFail('Incorrect boot mode when mocking dev mode ' '("%s" != "dev")' % result['boot_mode'])
def write_iteration_keyval(self, attr_dict, perf_dict): # append the dictionaries before they have the {perf} and {attr} added self._keyvals.append({'attr': attr_dict, 'perf': perf_dict}) self._new_keyval = True if attr_dict: attr_dict = self._append_type_to_keys(attr_dict, "attr") utils.write_keyval(self.resultsdir, attr_dict, type_tag="attr") if perf_dict: perf_dict = self._append_type_to_keys(perf_dict, "perf") utils.write_keyval(self.resultsdir, perf_dict, type_tag="perf") keyval_path = os.path.join(self.resultsdir, "keyval") print >> open(keyval_path, "a"), ""
def write_iteration_keyval(self, attr_dict, perf_dict): # append the dictionaries before they have the {perf} and {attr} added self._keyvals.append({'attr':attr_dict, 'perf':perf_dict}) self._new_keyval = True if attr_dict: attr_dict = self._append_type_to_keys(attr_dict, "attr") utils.write_keyval(self.resultsdir, attr_dict, type_tag="attr") if perf_dict: perf_dict = self._append_type_to_keys(perf_dict, "perf") utils.write_keyval(self.resultsdir, perf_dict, type_tag="perf") keyval_path = os.path.join(self.resultsdir, "keyval") print >> open(keyval_path, "a"), ""
def collect_perf_data(self): """Use system facade to collect performance data from the DUT using xmlrpc and save it to csv file in results directory. Data collected includes: 1. CPU usage 2. Memory usage 3. Thermal temperature 4. Timestamp 5. Board name 6. Build id """ start_time = time.time() perf_keyval = {} cpu_usage_list = list() memory_usage_list = list() temperature_list = list() board_name = self.system_facade.get_current_board() build_id = self.system_facade.get_chromeos_release_version() perf_file = open(os.path.join(self.resultsdir, _PERF_RESULT_FILE), 'w') writer = csv.writer(perf_file) writer.writerow( ['cpu', 'memory', 'temperature', 'timestamp', 'board', 'build']) while (time.time() - start_time) < _TOTAL_TEST_DURATION_SECONDS: perf_keyval['cpu_usage'] = self._cpu_usage() perf_keyval['memory_usage'] = self._memory_usage() perf_keyval['temperature'] = self._temperature_data() writer.writerow([ perf_keyval['cpu_usage'], perf_keyval['memory_usage'], perf_keyval['temperature'], time.strftime('%Y/%m/%d %H:%M:%S'), board_name, build_id ]) self.write_perf_keyval(perf_keyval) cpu_usage_list.append(perf_keyval['cpu_usage']) memory_usage_list.append(perf_keyval['memory_usage']) temperature_list.append(perf_keyval['temperature']) time.sleep(_MEASUREMENT_DURATION_SECONDS) perf_file.close() utils.write_keyval(os.path.join(self.resultsdir, os.pardir), {'perf_csv_folder': self.resultsdir}) self.upload_perf_data(cpu_usage_list, memory_usage_list, temperature_list)
def write_test_keyval(self, attr_dict): utils.write_keyval(self.outputdir, attr_dict)
def write_test_keyval(self, attr_dict): utils.write_keyval(self.outputdir, attr_dict, tap_report=self.job._tap)