mirror of
https://github.com/openharmony/test_xdevice.git
synced 2026-07-19 18:23:38 -04:00
修复OHJS驱动Fail用例被标记为Block的bug
Signed-off-by: deveco_test <liguangjie1@huawei.com>
This commit is contained in:
@@ -330,6 +330,8 @@ class OHJSUnitTestDriver(IDriver):
|
||||
do_module_kit_setup(request, self.kits)
|
||||
self.runner = OHJSUnitTestRunner(self.config)
|
||||
self.runner.suites_name = request.get_module_name()
|
||||
if self.rerun:
|
||||
self.runner.retry_times = self.runner.MAX_RETRY_TIMES
|
||||
# execute test case
|
||||
self._get_runner_config(json_config)
|
||||
oh_jsunit_para_parse(self.runner, self.config.testargs)
|
||||
@@ -400,6 +402,7 @@ class OHJSUnitTestDriver(IDriver):
|
||||
LOG.debug("Ready to run with rerun, expect run: %s"
|
||||
% len(expected_tests))
|
||||
test_run = self._run_tests(listener)
|
||||
self.runner.retry_times -= 1
|
||||
LOG.debug("Run with rerun, has run: %s" % len(test_run)
|
||||
if test_run else 0)
|
||||
if len(test_run) < len(expected_tests):
|
||||
@@ -421,6 +424,7 @@ class OHJSUnitTestDriver(IDriver):
|
||||
self.runner.add_arg("class", ",".join(tests))
|
||||
LOG.debug("Ready to rerun twice, expect run: %s" % len(expected_tests))
|
||||
test_run = self._run_tests(listener)
|
||||
self.runner.retry_times -= 1
|
||||
LOG.debug("Rerun twice, has run: %s" % len(test_run))
|
||||
if len(test_run) < len(expected_tests):
|
||||
expected_tests = TestDescription.remove_test(expected_tests,
|
||||
@@ -449,6 +453,8 @@ class OHJSUnitTestDriver(IDriver):
|
||||
|
||||
|
||||
class OHJSUnitTestRunner:
|
||||
MAX_RETRY_TIMES = 3
|
||||
|
||||
def __init__(self, config):
|
||||
self.arg_list = {}
|
||||
self.suites_name = None
|
||||
@@ -458,6 +464,7 @@ class OHJSUnitTestRunner:
|
||||
self.finished = False
|
||||
self.expect_tests_dict = dict()
|
||||
self.finished_observer = None
|
||||
self.retry_times = 1
|
||||
|
||||
def dry_run(self):
|
||||
parsers = get_plugin(Plugin.PARSER, CommonParserType.oh_jsunit_list)
|
||||
@@ -483,6 +490,7 @@ class OHJSUnitTestRunner:
|
||||
def notify_finished(self):
|
||||
if self.finished_observer:
|
||||
self.finished_observer.notify_task_finished()
|
||||
self.retry_times -= 1
|
||||
|
||||
def _get_shell_handler(self, listener):
|
||||
parsers = get_plugin(Plugin.PARSER, CommonParserType.oh_jsunit)
|
||||
|
||||
@@ -1151,7 +1151,8 @@ class OHJSUnitTestParser(IParser):
|
||||
result = copy.copy(test_info)
|
||||
result.code = ResultCode.FAILED.value
|
||||
listener.__ended__(LifeCycle.TestCase, result)
|
||||
if listener.__class__.__name__ == "ReportListener":
|
||||
if listener.__class__.__name__ == "ReportListener" \
|
||||
and self.runner.retry_times > 1:
|
||||
index = list(listener.tests.keys())[-1]
|
||||
listener.tests.pop(index)
|
||||
test_info.is_completed = True
|
||||
@@ -1165,7 +1166,8 @@ class OHJSUnitTestParser(IParser):
|
||||
result = copy.copy(test_info)
|
||||
result.code = ResultCode.FAILED.value
|
||||
listener.__ended__(LifeCycle.TestCase, result)
|
||||
if listener.__class__.__name__ == "ReportListener":
|
||||
if listener.__class__.__name__ == "ReportListener" \
|
||||
and self.runner.retry_times > 1:
|
||||
index = list(listener.tests.keys())[-1]
|
||||
listener.tests.pop(index)
|
||||
test_info.is_completed = True
|
||||
|
||||
Reference in New Issue
Block a user