Best Python code snippet using Testify_python
test_discovery.py
Source:test_discovery.py
...33 if not parent_mod_path:34 return set()35 else:36 return set(getattr(sys.modules[parent_mod_path], '_suites', set()))37def get_test_classes_from_module(mod):38 mod._suites = (39 set(getattr(mod, '_suites', set())) | get_parent_module_suites(mod)40 )41 for _, cls in inspect.getmembers(mod, inspect.isclass):42 # Skip things that are only there due to a side-effect of importing43 if cls.__module__ != mod.__name__:44 continue45 # Skip tests that have __test __ = False46 if not cls.__dict__.get('__test__', True):47 continue48 if isinstance(cls, MetaTestCase):49 cls._suites = set(getattr(cls, '_suites', set())) | mod._suites50 yield cls51 elif issubclass(cls, unittest.TestCase):52 yield TestifiedUnitTest.from_unittest_case(53 cls, module_suites=mod._suites,54 )55def discover(what):56 """Given a string module path, drill into it for its TestCases.57 This will descend recursively into packages and lists, so the following are valid:58 - add_test_module('tests.biz_cmds.biz_ad_test')59 - add_test_module('tests.biz_cmds.biz_ad_test.tests')60 - add_test_module('tests.biz_cmds')61 - add_test_module('tests')62 """63 try:64 what = to_module(what)65 mod = __import__(what, fromlist=[str('__trash')])66 for cls in get_test_classes_from_module(mod):67 yield cls68 if not hasattr(mod, '__path__'):69 return70 # It's a package!71 for _, module_name, _ in pkgutil.walk_packages(72 mod.__path__,73 prefix=mod.__name__ + '.',74 ):75 submod = __import__(module_name, fromlist=[str('__trash')])76 for cls in get_test_classes_from_module(submod):77 yield cls78 except GeneratorExit:79 raise80 except BaseException:81 # print the traceback to stderr, or else we can't see errors during --list-tests > testlist82 traceback.print_exc()83 raise DiscoveryError(84 (85 '\n ' +86 traceback.format_exc().replace('\n', '\n ')87 ).rstrip()88 )89def import_test_class(module_path, class_name):90 for klass in discover(module_path):...
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!!