本文整理匯總了Python中test_result.TestResult.end_in_interruption方法的典型用法代碼示例。如果您正苦於以下問題:Python TestResult.end_in_interruption方法的具體用法?Python TestResult.end_in_interruption怎麽用?Python TestResult.end_in_interruption使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類test_result.TestResult
的用法示例。
在下文中一共展示了TestResult.end_in_interruption方法的5個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: __run_class_fixtures
# 需要導入模塊: from test_result import TestResult [as 別名]
# 或者: from test_result.TestResult import end_in_interruption [as 別名]
def __run_class_fixtures(self, stage, fixtures, callback_on_run_event, callback_on_complete_event):
"""Set the current _stage, run a set of fixtures, calling callbacks before and after each."""
self._stage = stage
for fixture_method in fixtures:
result = TestResult(fixture_method)
try:
self.fire_event(callback_on_run_event, result)
result.start()
if self.__execute_block_recording_exceptions(fixture_method, result, is_class_level=True):
result.end_in_success()
else:
if self.__class_level_failure:
result.end_in_failure(self.__class_level_failure)
### Bump failure count?
### Something about failure_limit?
elif self.__class_level_error:
result.end_in_error(self.__class_level_error)
### Bump failure count?
### Something about failure_limit?
else:
raise Exception("Couldn't find a class-level failure or error even"
" though we failed while executing a class-level fixture."
" This should not be possible. Aborting.")
except (KeyboardInterrupt, SystemExit):
result.end_in_interruption(sys.exc_info())
raise
finally:
self.fire_event(callback_on_complete_event, result)
示例2: __run_test_methods
# 需要導入模塊: from test_result import TestResult [as 別名]
# 或者: from test_result.TestResult import end_in_interruption [as 別名]
def __run_test_methods(self, class_fixture_failures):
"""Run this class's setup fixtures / test methods / teardown fixtures.
These are run in the obvious order - setup and teardown go before and after,
respectively, every test method. If there was a failure in the class_setup
phase, no method-level fixtures or test methods will be run, and we'll eventually
skip all the way to the class_teardown phase. If a given test method is marked
as disabled, neither it nor its fixtures will be run. If there is an exception
during the setup phase, the test method will not be run and execution
will continue with the teardown phase.
"""
for test_method in self.runnable_test_methods():
result = TestResult(test_method)
# Sometimes, test cases want to take further action based on
# results, e.g. further clean-up or reporting if a test method
# fails. (Yelp's Selenium test cases do this.) If you need to
# programatically inspect test results, you should use
# self.results().
# NOTE: THIS IS INCORRECT -- im_self is shared among all test
# methods on the TestCase instance. This is preserved for backwards
# compatibility and should be removed eventually.
try:
# run "on-run" callbacks. e.g. print out the test method name
self.fire_event(self.EVENT_ON_RUN_TEST_METHOD, result)
result.start()
self.__all_test_results.append(result)
# first, run setup fixtures
self._stage = self.STAGE_SETUP
with self.__test_fixtures.instance_context() as fixture_failures:
# we haven't had any problems in class/instance setup, onward!
if not (fixture_failures + class_fixture_failures):
self._stage = self.STAGE_TEST_METHOD
result.record(test_method)
self._stage = self.STAGE_TEARDOWN
# maybe something broke during teardown -- record it
for exc_info in fixture_failures + class_fixture_failures:
result.end_in_failure(exc_info)
# if nothing's gone wrong, it's not about to start
if not result.complete:
result.end_in_success()
except (KeyboardInterrupt, SystemExit):
result.end_in_interruption(sys.exc_info())
raise
finally:
self.fire_event(self.EVENT_ON_COMPLETE_TEST_METHOD, result)
if not result.success:
self.failure_count += 1
if self.failure_limit and self.failure_count >= self.failure_limit:
break
示例3: __run_class_fixture
# 需要導入模塊: from test_result import TestResult [as 別名]
# 或者: from test_result.TestResult import end_in_interruption [as 別名]
def __run_class_fixture(self, fixture_method, function_to_call, stage, callback_on_run_event, callback_on_complete_event, fire_events=True):
self._stage = stage
result = TestResult(fixture_method)
try:
result.start()
if fire_events:
self.fire_event(callback_on_run_event, result)
if self.__execute_block_recording_exceptions(function_to_call, result, is_class_level=True):
result.end_in_success()
else:
self.failure_count += 1
except (KeyboardInterrupt, SystemExit):
result.end_in_interruption(sys.exc_info())
raise
finally:
if fire_events:
self.fire_event(callback_on_complete_event, result)
示例4: __run_class_fixtures
# 需要導入模塊: from test_result import TestResult [as 別名]
# 或者: from test_result.TestResult import end_in_interruption [as 別名]
def __run_class_fixtures(self, stage, fixtures, callback_on_run_event, callback_on_complete_event):
"""Set the current _stage, run a set of fixtures, calling callbacks before and after each."""
self._stage = stage
for fixture_method in fixtures:
result = TestResult(fixture_method)
try:
result.start()
self.fire_event(callback_on_run_event, result)
if self.__execute_block_recording_exceptions(fixture_method, result, is_class_level=True):
result.end_in_success()
else:
self.failure_count += 1
except (KeyboardInterrupt, SystemExit):
result.end_in_interruption(sys.exc_info())
raise
finally:
self.fire_event(callback_on_complete_event, result)
示例5: __run_test_methods
# 需要導入模塊: from test_result import TestResult [as 別名]
# 或者: from test_result.TestResult import end_in_interruption [as 別名]
def __run_test_methods(self):
"""Run this class's setup fixtures / test methods / teardown fixtures.
These are run in the obvious order - setup and teardown go before and after,
respectively, every test method. If there was a failure in the class_setup
phase, no method-level fixtures or test methods will be run, and we'll eventually
skip all the way to the class_teardown phase. If a given test method is marked
as disabled, neither it nor its fixtures will be run. If there is an exception
during during the setup phase, the test method will not be run and execution
will continue with the teardown phase.
"""
for test_method in self.runnable_test_methods():
result = TestResult(test_method)
test_method.im_self.test_result = result
try:
self._method_level = True # Flag that we're currently running method-level stuff (rather than class-level)
# run "on-run" callbacks. eg/ print out the test method name
for callback in self.__callbacks[self.EVENT_ON_RUN_TEST_METHOD]:
callback(result.to_dict())
result.start()
if self.__class_level_failure:
result.end_in_failure(self.__class_level_failure)
elif self.__class_level_error:
result.end_in_error(self.__class_level_error)
else:
# first, run setup fixtures
self._stage = self.STAGE_SETUP
def _setup_block():
for fixture_method in self.setup_fixtures + [ self.setUp ]:
fixture_method()
self.__execute_block_recording_exceptions(_setup_block, result)
def _run_test_block():
# then run the test method itself, assuming setup was successful
self._stage = self.STAGE_TEST_METHOD
if not result.complete:
self.__execute_block_recording_exceptions(test_method, result)
def _setup_teardown_block():
self.__enter_context_managers(self.setup_teardown_fixtures, _run_test_block)
# then run any setup_teardown fixtures, assuming setup was successful.
if not result.complete:
self.__execute_block_recording_exceptions(_setup_teardown_block, result)
# finally, run the teardown phase
self._stage = self.STAGE_TEARDOWN
def _teardown_block():
for fixture_method in [ self.tearDown ] + self.teardown_fixtures:
fixture_method()
self.__execute_block_recording_exceptions(_teardown_block, result)
# if nothing's gone wrong, it's not about to start
if not result.complete:
result.end_in_success()
except (KeyboardInterrupt, SystemExit):
result.end_in_interruption(sys.exc_info())
raise
finally:
for callback in self.__callbacks[self.EVENT_ON_COMPLETE_TEST_METHOD]:
callback(result.to_dict())
self._method_level = False
if not result.success:
self.failure_count += 1
if self.failure_limit and self.failure_count >= self.failure_limit:
return