Best Python code snippet using SeleniumBase
base_plugin.py
Source:base_plugin.py
...101 self.page_results_list,102 self.successes, self.failures,103 self.options.browser,104 self.show_report)105 def __log_all_options_if_none_specified(self, test):106 """107 When testing_base is specified, but none of the log options to save are108 specified (basic_test_info, screen_shots, page_source), then save them109 all by default. Otherwise, save only selected ones from their plugins.110 """111 if ((not self.options.enable_plugin_basic_test_info) and112 (not self.options.enable_plugin_screen_shots) and113 (not self.options.enable_plugin_page_source)):114 test_logpath = self.options.log_path + "/" + test.id()115 log_helper.log_screenshot(test_logpath, test.driver)116 log_helper.log_test_failure_data(117 test_logpath, test.driver, test.browser)118 log_helper.log_page_source(test_logpath, test.driver)119 def addSuccess(self, test, capt):120 if self.report_on:121 self.duration = str(122 "%0.3fs" % (float(time.time()) - float(self.duration)))123 self.successes.append(test.id())124 self.page_results_list.append(125 report_helper.process_successes(126 test, self.test_count, self.duration))127 def add_fails_or_errors(self, test):128 if self.report_on:129 self.duration = str(130 "%0.3fs" % (float(time.time()) - float(self.duration)))131 if test.id() == 'nose.failure.Failure.runTest':132 print(">>> ERROR: Could not locate tests to run!")133 print(">>> The Test Report WILL NOT be generated!")134 self.import_error = True135 return136 self.failures.append(test.id())137 br = self.options.browser138 self.page_results_list.append(139 report_helper.process_failures(140 test, self.test_count, br, self.duration))141 def addFailure(self, test, err, capt=None, tbinfo=None):142 self.__log_all_options_if_none_specified(test)143 self.add_fails_or_errors(test)144 def addError(self, test, err, capt=None):145 """146 Since Skip, Blocked, and Deprecated are all technically errors, but not147 error states, we want to make sure that they don't show up in148 the nose output as errors.149 """150 if (err[0] == errors.BlockedTest or151 err[0] == errors.SkipTest or152 err[0] == errors.DeprecatedTest):153 print(err[1].__str__().split('''-------------------- >> '''154 '''begin captured logging'''155 ''' << --------------------''', 1)[0])156 else:157 self.__log_all_options_if_none_specified(test)158 self.add_fails_or_errors(test)159 def handleError(self, test, err, capt=None):160 """161 If the database plugin is not present, we have to handle capturing162 "errors" that shouldn't be reported as such in base.163 """164 if not hasattr(test.test, "testcase_guid"):165 if err[0] == errors.BlockedTest:166 raise SkipTest(err[1])167 return True168 elif err[0] == errors.DeprecatedTest:169 raise SkipTest(err[1])170 return True171 elif err[0] == errors.SkipTest:...
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!