SYMBOL INDEX (954 symbols across 114 files) FILE: api_case/confrun.py function base_url (line 6) | def base_url(): function debug (line 14) | def debug(): function rerun (line 21) | def rerun(): function report (line 28) | def report(): function timeout (line 37) | def timeout(): function title (line 44) | def title(): function tester (line 51) | def tester(): function description (line 58) | def description(): function language (line 65) | def language(): function failfast (line 73) | def failfast(): FILE: demo/confrun.py function start_run (line 6) | def start_run(): function end_run (line 13) | def end_run(): function debug (line 20) | def debug(): function rerun (line 27) | def rerun(): function report (line 34) | def report(): function timeout (line 44) | def timeout(): function title (line 51) | def title(): function tester (line 58) | def tester(): function description (line 65) | def description(): function language (line 72) | def language(): function whitelist (line 81) | def whitelist(): function blacklist (line 86) | def blacklist(): FILE: demo/test_dir/api_case/test_http_demo.py class TestRequest (line 5) | class TestRequest(seldom.TestCase): method test_put_method (line 11) | def test_put_method(self): method test_post_method (line 18) | def test_post_method(self): method test_get_method (line 25) | def test_get_method(self): method test_delete_method (line 33) | def test_delete_method(self): class TestAssert (line 41) | class TestAssert(seldom.TestCase): method test_data_assert (line 46) | def test_data_assert(self): method test_format_assert (line 56) | def test_format_assert(self): method test_path_assert (line 80) | def test_path_assert(self): class TestRespData (line 90) | class TestRespData(seldom.TestCase): method test_resp_data (line 95) | def test_resp_data(self): method test_data_dependency (line 105) | def test_data_dependency(self): class TestDDT (line 118) | class TestDDT(seldom.TestCase): method test_data (line 128) | def test_data(self, key, value): FILE: demo/test_dir/app_case/test_first_demo.py class TestBingApp (line 7) | class TestBingApp(seldom.TestCase): method start (line 12) | def start(self): method test_bing_search (line 15) | def test_bing_search(self): FILE: demo/test_dir/app_case/test_po_demo.py class BingPage (line 8) | class BingPage(Page): class TestBingApp (line 15) | class TestBingApp(seldom.TestCase): method start (line 20) | def start(self): method test_bbs (line 24) | def test_bbs(self): FILE: demo/test_dir/app_case/test_u2_demo.py class MyAppTest (line 9) | class MyAppTest(seldom.TestCase): method start (line 11) | def start(self): method end (line 17) | def end(self): method test_app (line 21) | def test_app(self, user): FILE: demo/test_dir/web_case/test_data_demo.py class RandomDataTest (line 5) | class RandomDataTest(seldom.TestCase): method test_case (line 10) | def test_case(self): FILE: demo/test_dir/web_case/test_ddt_demo.py class BingTest (line 5) | class BingTest(seldom.TestCase): method test_bing_tuple (line 13) | def test_bing_tuple(self, desc, search_key): method test_bing_list (line 28) | def test_bing_list(self, desc, search_key): method test_bing_dict (line 43) | def test_bing_dict(self, scene, search_key): class FileDataTest (line 54) | class FileDataTest(seldom.TestCase): method start (line 57) | def start(self): method test_json_list (line 61) | def test_json_list(self, firstname, lastname): method test_json_dict (line 72) | def test_json_dict(self, _, username, password): method test_yaml_list (line 83) | def test_yaml_list(self, firstname, lastname): method test_yaml_dict (line 94) | def test_yaml_dict(self, username, password): method test_csv (line 105) | def test_csv(self, firstname, lastname): method test_excel (line 116) | def test_excel(self, firstname, lastname): FILE: demo/test_dir/web_case/test_first_demo.py class BingTest (line 5) | class BingTest(seldom.TestCase): method test_case (line 8) | def test_case(self): method test_case_two (line 15) | def test_case_two(self): FILE: demo/test_dir/web_case/test_fixture_demo.py class BaiduTest (line 4) | class BaiduTest(seldom.TestCase): method start_class (line 11) | def start_class(cls): method end_class (line 17) | def end_class(cls): method start (line 21) | def start(self): method end (line 27) | def end(self): method test_open_index (line 31) | def test_open_index(self): method test_open_news (line 35) | def test_open_news(self): FILE: demo/test_dir/web_case/test_playwright_demo.py class Playwright (line 10) | class Playwright(seldom.TestCase): method start (line 12) | def start(self): method end (line 17) | def end(self): method test_start (line 20) | def test_start(self): FILE: demo/test_dir/web_case/test_po_demo.py class BaiduPage (line 13) | class BaiduPage(Page): class BaiduTest (line 20) | class BaiduTest(seldom.TestCase): method test_baidu_page (line 23) | def test_baidu_page(self): FILE: seldom/appdriver.py class AppDriver (line 14) | class AppDriver(WebDriver): method __init__ (line 19) | def __init__(self): method background_app (line 24) | def background_app(self, seconds: int): method is_app_installed (line 35) | def is_app_installed(self, bundle_id: str) -> bool: method install_app (line 47) | def install_app(self, app_path: str, **options: Any): method remove_app (line 71) | def remove_app(self, app_id: str, **options: Any): method terminate_app (line 90) | def terminate_app(self, app_id: str, **options: Any) -> bool: method activate_app (line 106) | def activate_app(self, app_id: str): method query_app_state (line 119) | def query_app_state(self, app_id: str) -> int: method app_strings (line 132) | def app_strings(self, language: str = None, string_file: str = None) -... method base64_image (line 147) | def base64_image(image_path: str): method click_image (line 162) | def click_image(self, image_path: str) -> None: method keyboard_search (line 174) | def keyboard_search(self) -> None: FILE: seldom/appium_lab/__init__.py class AppiumLab (line 10) | class AppiumLab(Action, FindByText, KeyEvent): method check_state (line 20) | def check_state(self, app_id: str) -> int: method launch_app (line 41) | def launch_app(self, app_id: str) -> None: method close_app (line 49) | def close_app(self, app_id: str) -> None: FILE: seldom/appium_lab/action.py class Action (line 14) | class Action(Switch): method __init__ (line 19) | def __init__(self, driver=None): method size (line 26) | def size(self) -> dict: method _perform_action (line 33) | def _perform_action(self, x_start: int, y_start: int, x_end: int, y_en... method tap (line 45) | def tap(self, x: int, y: int, pause: float = 0.1, sleep: float = 2) ->... method swipe_up (line 65) | def swipe_up(self, times: int = 1, upper: bool = False, interval_time:... method swipe_down (line 88) | def swipe_down(self, times: int = 1, upper: bool = False, interval_tim... method swipe_left (line 111) | def swipe_left(self, times: int = 1, width_percentage: float = 0.8, in... method swipe_right (line 131) | def swipe_right(self, times: int = 1, width_percentage: float = 0.8, i... method drag_from_to (line 151) | def drag_from_to(self, x_start: int, x_end: int, y_start: int, y_end: ... FILE: seldom/appium_lab/android.py class UiAutomator2Options (line 9) | class UiAutomator2Options(UiAutomator2Options): method load_capabilities (line 14) | def load_capabilities(self: T, caps: Dict[str, Any]) -> T: class EspressoOptions (line 24) | class EspressoOptions(EspressoOptions): method load_capabilities (line 29) | def load_capabilities(self: T, caps: Dict[str, Any]) -> T: FILE: seldom/appium_lab/appium_service.py class AppiumService (line 7) | class AppiumService(OriginalServer): method __init__ (line 12) | def __init__(self, method start_service (line 25) | def start_service(self, **kwargs) -> None: FILE: seldom/appium_lab/find.py class FindByText (line 11) | class FindByText(Switch): method __remove_unprintable_chars (line 17) | def __remove_unprintable_chars(string: str) -> str: method __find (line 24) | def __find(self, class_name: str, attribute: str, text: str): method find_view (line 47) | def find_view(self, text: str = None, content_desc: str = None): method find_edit_text (line 74) | def find_edit_text(self, text: str): method find_button (line 91) | def find_button(self, text: str = None, content_desc: str = None): method find_text_view (line 118) | def find_text_view(self, text: str): method find_image_view (line 135) | def find_image_view(self, text: str): method find_check_box (line 152) | def find_check_box(self, text: str): method find_static_text (line 169) | def find_static_text(self, text: str): method find_other (line 186) | def find_other(self, text: str): method find_text_field (line 203) | def find_text_field(self, text: str): method find_image (line 220) | def find_image(self, text: str): method find_ios_button (line 237) | def find_ios_button(self, text: str): FILE: seldom/appium_lab/keyboard.py class KeyEvent (line 66) | class KeyEvent: method __init__ (line 72) | def __init__(self, driver): method key_text (line 75) | def key_text(self, text: str = ""): method press_key (line 96) | def press_key(self, key: str): method long_press_key (line 108) | def long_press_key(self, key: str): method back (line 120) | def back(self): method home (line 125) | def home(self): method hide_keyboard (line 130) | def hide_keyboard(self, key_name=None, key=None, strategy=None): method is_keyboard_shown (line 146) | def is_keyboard_shown(self) -> bool: FILE: seldom/appium_lab/ocr_plugin.py class OCRCommand (line 8) | class OCRCommand(ExtensionBase): method method_name (line 9) | def method_name(self): method ocr_command (line 12) | def ocr_command(self, argument): method add_command (line 15) | def add_command(self): FILE: seldom/appium_lab/switch.py class Switch (line 10) | class Switch: method __init__ (line 15) | def __init__(self, driver=None): method context (line 20) | def context(self): method switch_to_app (line 30) | def switch_to_app(self) -> None: method switch_to_web (line 39) | def switch_to_web(self, context_name: str = None) -> None: method switch_to_flutter (line 55) | def switch_to_flutter(self) -> None: method switch_to_ocr (line 64) | def switch_to_ocr(self) -> None: method sleep (line 73) | def sleep(sec): FILE: seldom/case.py class TestCase (line 27) | class TestCase(unittest.TestCase, AppDriver, HttpRequest): method start_class (line 30) | def start_class(self): method end_class (line 36) | def end_class(self): method setUpClass (line 43) | def setUpClass(cls): method tearDownClass (line 56) | def tearDownClass(cls): method start (line 70) | def start(self): method end (line 76) | def end(self): method setUp (line 82) | def setUp(self): method tearDown (line 86) | def tearDown(self): method driver (line 90) | def driver(self): method device (line 97) | def device(self): method browser (line 103) | def browser(self, name: str) -> None: method quit (line 118) | def quit(self) -> None: method new_browser (line 131) | def new_browser(self) -> WebDriver: method assertTitle (line 139) | def assertTitle(self, title: str = None, msg: str = None) -> None: method assertInTitle (line 159) | def assertInTitle(self, title: str = None, msg: str = None) -> None: method assertUrl (line 179) | def assertUrl(self, url: str = None, msg: str = None) -> None: method assertInUrl (line 200) | def assertInUrl(self, url: str = None, msg: str = None) -> None: method assertText (line 221) | def assertText(self, text: str = None, msg: str = None) -> None: method assertNotText (line 243) | def assertNotText(self, text: str = None, msg: str = None) -> None: method assertAlertText (line 266) | def assertAlertText(self, text: str = None, msg: str = None) -> None: method assertElement (line 287) | def assertElement(self, index: int = 0, msg: str = None, **kwargs) -> ... method assertNotElement (line 305) | def assertNotElement(self, index: int = 0, msg: str = None, **kwargs) ... method assertScreenshot (line 328) | def assertScreenshot(self, tolerance: int = 0, msg: str = None): method assertStatusCode (line 343) | def assertStatusCode(self, status_code: int, msg: str = None) -> None: method assertStatusOk (line 350) | def assertStatusOk(self, msg: str = None) -> None: method assertSchema (line 357) | def assertSchema(self, schema, response=None) -> None: method assertJSON (line 372) | def assertJSON(self, assert_json, response=None, exclude=None) -> None: method assertPath (line 388) | def assertPath(self, path, value) -> None: method assertInPath (line 397) | def assertInPath(self, path, value) -> None: method xSkip (line 406) | def xSkip(self, reason): method xFail (line 416) | def xFail(self, msg): method sleep (line 427) | def sleep(sec: int | tuple = 1) -> None: method pause (line 438) | def pause() -> None: method assertEqual (line 448) | def assertEqual(self, first, second, msg=None): method assertNotEqual (line 452) | def assertNotEqual(self, first, second, msg=None): method assertTrue (line 456) | def assertTrue(self, expr, msg=None): method assertFalse (line 460) | def assertFalse(self, expr, msg=None): method assertIn (line 464) | def assertIn(self, member, container, msg=None): method assertNotIn (line 468) | def assertNotIn(self, member, container, msg=None): method assertIsInstance (line 472) | def assertIsInstance(self, obj, cls, msg=None): method assertNotIsInstance (line 476) | def assertNotIsInstance(self, obj, cls, msg=None): method assertRegex (line 480) | def assertRegex(self, text, regex, msg=None): method assertNotRegex (line 484) | def assertNotRegex(self, text, regex, msg=None): method assertAlmostEqual (line 488) | def assertAlmostEqual(self, first, second, places=None, msg=None, delt... method assertNotAlmostEqual (line 492) | def assertNotAlmostEqual(self, first, second, places=None, msg=None, d... method assertGreater (line 496) | def assertGreater(self, a, b, msg=None): method assertGreaterEqual (line 500) | def assertGreaterEqual(self, a, b, msg=None): method assertLess (line 504) | def assertLess(self, a, b, msg=None): method assertLessEqual (line 508) | def assertLessEqual(self, a, b, msg=None): method assertCountEqual (line 512) | def assertCountEqual(self, a, b, msg=None): FILE: seldom/cli.py function _import_seldom_core (line 20) | def _import_seldom_core(): function _import_har_parser (line 46) | def _import_har_parser(): function _import_swagger_parser (line 52) | def _import_swagger_parser(): function _import_file_running_config (line 58) | def _import_file_running_config(): function main (line 65) | def main( function create_scaffold (line 263) | def create_scaffold(project_name: str, project_type: str, log) -> None: function reset_case (line 308) | def reset_case(path: str, cases: list) -> tuple[str, list]: FILE: seldom/db_operation/base_db.py class SQLBase (line 6) | class SQLBase: method dict_to_str (line 10) | def dict_to_str(data: dict) -> str: method dict_to_str_and (line 26) | def dict_to_str_and(conditions: dict) -> str: method delete (line 41) | def delete(self, table: str, where: dict = None) -> None: method insert (line 47) | def insert(self, table: str, data: dict) -> None: method select (line 53) | def select(self, table: str, where: dict = None, one: bool = False) ->... method update (line 59) | def update(self, table: str, data: dict, where: dict) -> None: FILE: seldom/db_operation/mongo_db.py class MongoDB (line 10) | class MongoDB: method __new__ (line 13) | def __new__(cls, host: str, port: int, db: str): FILE: seldom/db_operation/mssql_db.py class MSSQLDB (line 12) | class MSSQLDB(SQLBase): method __init__ (line 15) | def __init__(self, server: str, user: str, password: str, database: st... method close (line 31) | def close(self) -> None: method execute_sql (line 37) | def execute_sql(self, sql: str) -> None: method query_sql (line 46) | def query_sql(self, sql: str) -> list: method query_one (line 60) | def query_one(self, sql: str) -> Any: method insert_get_last_id (line 71) | def insert_get_last_id(self, sql: str) -> int: method insert_data (line 83) | def insert_data(self, table: str, data: dict) -> None: method select_data (line 94) | def select_data(self, table: str, where: dict = None, one: bool = Fals... method update_data (line 106) | def update_data(self, table: str, data: dict, where: dict) -> None: method delete_data (line 116) | def delete_data(self, table: str, where: dict = None) -> None: method init_table (line 125) | def init_table(self, table_data: dict, clear: bool = True) -> None: FILE: seldom/db_operation/mysql_db.py class MySQLDB (line 9) | class MySQLDB(SQLBase): method __init__ (line 12) | def __init__(self, host: str, port: int, user: str, password: str, dat... method close (line 29) | def close(self) -> None: method execute_sql (line 35) | def execute_sql(self, sql: str) -> None: method query_sql (line 46) | def query_sql(self, sql: str) -> list: method query_one (line 61) | def query_one(self, sql: str) -> Any: method insert_get_last_id (line 73) | def insert_get_last_id(self, sql: str) -> int: method insert_data (line 86) | def insert_data(self, table: str, data: dict) -> None: method select_data (line 97) | def select_data(self, table: str, where: dict = None, one: bool = Fals... method update_data (line 109) | def update_data(self, table: str, data: dict, where: dict) -> None: method delete_data (line 119) | def delete_data(self, table: str, where: dict = None) -> None: method init_table (line 128) | def init_table(self, table_data: dict, clear: bool = True) -> None: FILE: seldom/db_operation/postgres_db.py class PostgresDB (line 10) | class PostgresDB(SQLBase): method __init__ (line 12) | def __init__(self, host: str, port: int, database: str, user: str, pas... method close (line 26) | def close(self): method execute_sql (line 32) | def execute_sql(self, sql: str) -> None: method query_sql (line 40) | def query_sql(self, sql: str) -> list: method query_one (line 54) | def query_one(self, sql: str) -> Any: method insert_get_last_id (line 63) | def insert_get_last_id(self, sql: str) -> int: method insert_data (line 74) | def insert_data(self, table: str, data: dict) -> None: method select_data (line 85) | def select_data(self, table: str, where: dict = None, one: bool = Fals... method update_data (line 96) | def update_data(self, table: str, data: dict, where: dict) -> None: method delete_data (line 105) | def delete_data(self, table: str, where: dict = None) -> None: method init_table (line 115) | def init_table(self, table_data: dict, clear: bool = True) -> None: FILE: seldom/db_operation/sqlite_db.py class SQLiteDB (line 9) | class SQLiteDB(SQLBase): method __init__ (line 12) | def __init__(self, db_path: str): method close (line 19) | def close(self) -> None: method execute_sql (line 25) | def execute_sql(self, sql: str) -> None: method insert_data (line 32) | def insert_data(self, table: str, data: dict) -> None: method query_sql (line 43) | def query_sql(self, sql: str) -> list: method query_one (line 55) | def query_one(self, sql: str) -> Any: method insert_get_last_id (line 64) | def insert_get_last_id(self, sql: str) -> int: method select_data (line 75) | def select_data(self, table: str, where: dict = None, one: bool = Fals... method update_data (line 87) | def update_data(self, table: str, data: dict, where: dict) -> None: method delete_data (line 97) | def delete_data(self, table: str, where: dict = None) -> None: method init_table (line 106) | def init_table(self, table_data: dict, clear: bool = True) -> None: FILE: seldom/driver.py class Browser (line 17) | class Browser: method __new__ (line 25) | def __new__(cls, name: str = None, executable_path=None, options=None,... method chrome (line 51) | def chrome(executable_path, options, command_executor): method firefox (line 73) | def firefox(executable_path, options, command_executor): method ie (line 85) | def ie(executable_path, options, command_executor): method edge (line 97) | def edge(executable_path, options, command_executor): method safari (line 109) | def safari(executable_path, options, command_executor): FILE: seldom/extend_lib/base_assert.py function log_assertions (line 5) | def log_assertions(func): FILE: seldom/extend_lib/curlify.py function to_curl (line 8) | def to_curl(request, compressed: bool = False, verify: bool = True) -> str: FILE: seldom/extend_lib/jsonpath.py function normalize (line 16) | def normalize(x: str) -> str: function jsonpath (line 38) | def jsonpath( FILE: seldom/extend_lib/parameterized.py class SkipTest (line 32) | class SkipTest(Exception): class InstanceType (line 43) | class InstanceType: function make_method (line 51) | def make_method(func, instance, type): function to_text (line 59) | def to_text(x): function getargspec (line 71) | def getargspec(func): function skip_on_empty_helper (line 85) | def skip_on_empty_helper(*a, **kw): function reapply_patches_if_need (line 89) | def reapply_patches_if_need(func): class DummyPatchTarget (line 141) | class DummyPatchTarget(object): method create_dummy_patch (line 145) | def create_dummy_patch(): function delete_patches_if_need (line 152) | def delete_patches_if_need(func): class param (line 163) | class param(_param): method __new__ (line 185) | def __new__(cls, *args, **kwargs): method explicit (line 189) | def explicit(cls, args=None, kwargs=None): method from_decorator (line 203) | def from_decorator(cls, args): method __repr__ (line 226) | def __repr__(self): class QuietOrderedDict (line 230) | class QuietOrderedDict(MaybeOrderedDict): function parameterized_argument_value_pairs (line 237) | def parameterized_argument_value_pairs(func, p): function short_repr (line 297) | def short_repr(x, n=64): function default_doc_func (line 312) | def default_doc_func(func, num, p): function default_name_func (line 336) | def default_name_func(func, num, p): function set_test_runner (line 353) | def set_test_runner(name): function detect_runner (line 363) | def detect_runner(): class parameterized (line 389) | class parameterized(object): method __init__ (line 410) | def __init__(self, input, doc_func=None, skip_on_empty=False): method __call__ (line 415) | def __call__(self, test_func): method param_as_nose_tuple (line 466) | def param_as_nose_tuple(self, test_self, func, num, p): method assert_not_in_testcase_subclass (line 485) | def assert_not_in_testcase_subclass(self): method _terrible_magic_get_defining_classes (line 492) | def _terrible_magic_get_defining_classes(self): method input_as_callable (line 510) | def input_as_callable(cls, input): method check_input_values (line 517) | def check_input_values(cls, input_values): method expand (line 528) | def expand(cls, input, name_func=None, doc_func=None, skip_on_empty=Fa... method param_as_standalone_func (line 611) | def param_as_standalone_func(cls, p, func, name): method to_safe_name (line 637) | def to_safe_name(cls, s): function parameterized_class (line 643) | def parameterized_class(attrs, input_values=None, class_name_func=None): function get_class_name_suffix (line 702) | def get_class_name_suffix(params_dict): function default_class_name_func (line 716) | def default_class_name_func(cls, num, params_dict): FILE: seldom/extend_lib/tomorrow.py function threads (line 10) | def threads(n, queue_max=None): FILE: seldom/file_runner/api_excel.py class APITest (line 8) | class APITest(seldom.TestCase): method test_api_excel (line 11) | def test_api_excel(self, name, url, method, headers, param_type, param... FILE: seldom/har2case/core.py class HarParser (line 9) | class HarParser: method __init__ (line 12) | def __init__(self, har_file_path: str): method _make_testcase (line 33) | def _make_testcase(self) -> str: method create_file (line 92) | def create_file(save_path: str, file_content: str = "") -> None: method gen_testcase (line 100) | def gen_testcase(self) -> None: FILE: seldom/har2case/utils.py function load_har_log_entries (line 10) | def load_har_log_entries(file_path): function list_to_dict_str (line 39) | def list_to_dict_str(data: list) -> str: FILE: seldom/logging/exceptions.py class SeldomException (line 6) | class SeldomException(Exception): method __init__ (line 11) | def __init__(self, msg: str = None, screen: str = None, stacktrace: st... method __str__ (line 16) | def __str__(self): class BrowserTypeError (line 26) | class BrowserTypeError(SeldomException): class NotFindElementError (line 33) | class NotFindElementError(SeldomException): class TestFixtureRunError (line 40) | class TestFixtureRunError(SeldomException): class FileTypeError (line 47) | class FileTypeError(SeldomException): class RunParamError (line 54) | class RunParamError(SeldomException): class RunningError (line 61) | class RunningError(SeldomException): FILE: seldom/logging/log.py class LogConfig (line 29) | class LogConfig: method __init__ (line 32) | def __init__(self, level: str = "DEBUG", colorlog: bool = True): method set_level (line 41) | def set_level(self, colorlog: bool = True, format: str = None, level: ... FILE: seldom/project_temp/api/confrun.py function base_url (line 8) | def base_url(): function debug (line 16) | def debug(): function rerun (line 23) | def rerun(): function report (line 30) | def report(): function timeout (line 40) | def timeout(): function title (line 47) | def title(): function tester (line 54) | def tester(): function description (line 61) | def description(): function language (line 68) | def language(): function whitelist (line 77) | def whitelist(): function blacklist (line 82) | def blacklist(): FILE: seldom/project_temp/api/test_sample.py class TestRequest (line 5) | class TestRequest(seldom.TestCase): method test_put_method (line 7) | def test_put_method(self): method test_post_method (line 12) | def test_post_method(self): method test_get_method (line 17) | def test_get_method(self): method test_delete_method (line 23) | def test_delete_method(self): class TestDDT (line 29) | class TestDDT(seldom.TestCase): method test_get_method (line 32) | def test_get_method(self, _, id_, name): FILE: seldom/project_temp/app/confrun.py function app_info (line 9) | def app_info(): function app_server (line 26) | def app_server(): function debug (line 34) | def debug(): function rerun (line 41) | def rerun(): function report (line 48) | def report(): function timeout (line 58) | def timeout(): function title (line 65) | def title(): function tester (line 72) | def tester(): function description (line 79) | def description(): function language (line 86) | def language(): function whitelist (line 95) | def whitelist(): function blacklist (line 100) | def blacklist(): FILE: seldom/project_temp/app/test_sample.py class TestBingApp (line 7) | class TestBingApp(seldom.TestCase): method start (line 12) | def start(self): method test_bing_search (line 15) | def test_bing_search(self): FILE: seldom/project_temp/web/confrun.py function browser (line 8) | def browser(): function debug (line 16) | def debug(): function rerun (line 23) | def rerun(): function report (line 30) | def report(): function timeout (line 40) | def timeout(): function title (line 47) | def title(): function tester (line 54) | def tester(): function description (line 61) | def description(): function language (line 68) | def language(): function whitelist (line 77) | def whitelist(): function blacklist (line 82) | def blacklist(): FILE: seldom/project_temp/web/test_sample.py class SampleTest (line 5) | class SampleTest(seldom.TestCase): method test_case (line 7) | def test_case(self): class DDTTest (line 14) | class DDTTest(seldom.TestCase): method test_data_driver (line 17) | def test_data_driver(self, _, keyword): FILE: seldom/request.py class ResponseResult (line 24) | class ResponseResult: function formatting (line 30) | def formatting(msg): function request (line 37) | def request(func): function mock_url (line 109) | def mock_url(url: str) -> str: function check_proxies (line 126) | def check_proxies() -> Any | None: class HttpRequest (line 134) | class HttpRequest: method __init__ (line 137) | def __init__(self, base_url=None, *args, **kwargs): method get (line 145) | def get(self, url, params=None, **kwargs): method post (line 154) | def post(self, url, data=None, json=None, **kwargs): method put (line 163) | def put(self, url, data=None, **kwargs): method delete (line 172) | def delete(self, url, **kwargs): method patch (line 181) | def patch(self, url, data=None, **kwargs): method response (line 190) | def response(self) -> Any: method jsonpath (line 198) | def jsonpath(expr, index: int = None, response=None) -> Any: method jmespath (line 214) | def jmespath(expr, response=None) -> Any: method status_code (line 226) | def status_code(self) -> int: method curl (line 234) | def curl(request=None, compressed: bool = False, verify: bool = True) ... class Session (line 247) | class Session(requests.Session): method get (line 250) | def get(self, url, **kwargs): method post (line 265) | def post(self, url, data=None, json=None, **kwargs): method put (line 283) | def put(self, url, data=None, **kwargs): method delete (line 300) | def delete(self, url, **kwargs): method json_to_dict (line 315) | def json_to_dict(data: str, replace_quotes: bool = True) -> dict: method base_url (line 343) | def base_url(self): method save_response (line 350) | def save_response(response: requests.Response, filename: str = None): method ip_address (line 382) | def ip_address(self, url: str = None) -> str: method base_url (line 397) | def base_url(self, value): function check_response (line 401) | def check_response(describe: str = "", status_code: int = 200, ret: str ... function retry (line 464) | def retry(times: int = 3, wait: int = 1): FILE: seldom/running/DebugTestRunner.py class DebugTestRunner (line 10) | class DebugTestRunner(unittest.TextTestRunner): method __init__ (line 13) | def __init__(self, *args, **kwargs): method test_iter (line 23) | def test_iter(cls, suite): method run (line 34) | def run(self, testlist): FILE: seldom/running/config.py class Seldom (line 9) | class Seldom: method driver (line 16) | def driver(self): method driver (line 23) | def driver(self, value): method base_url (line 27) | def base_url(self): method base_url (line 34) | def base_url(self, value): method device (line 38) | def device(self): method device (line 45) | def device(self, value): class BrowserConfig (line 63) | class BrowserConfig: function base_url (line 78) | def base_url(): function driver (line 83) | def driver(): function env (line 88) | def env(): class FileRunningConfig (line 93) | class FileRunningConfig: function report_local_style (line 100) | def report_local_style() -> bool: FILE: seldom/running/loader_extend.py class SeldomTestLoader (line 9) | class SeldomTestLoader(TestLoader): method getTestCaseNames (line 18) | def getTestCaseNames(self, testCaseClass): method rediscover (line 65) | def rediscover(self, start_dir, pattern='test*.py', top_level_dir=None): FILE: seldom/running/loader_hook.py function loader (line 6) | def loader(func_name: str, file_name: str = "confrun.py", *args, **kwargs): FILE: seldom/running/runner.py class TestMain (line 49) | class TestMain: method __init__ (line 55) | def __init__( method run (line 210) | def run(self, suits) -> None: method open_browser (line 255) | def open_browser(self) -> None: method close_browser (line 273) | def close_browser() -> None: class TestMainExtend (line 289) | class TestMainExtend(TestMain): method __init__ (line 296) | def __init__( method collect_cases (line 324) | def collect_cases(self, json: bool = False, level: str = "data", warni... method _load_testsuite (line 375) | def _load_testsuite(self, warning: bool = False) -> Dict[str, List[Any]]: method run_cases (line 407) | def run_cases(self, data: list) -> None: FILE: seldom/skip.py function skip (line 12) | def skip(reason=None): function skip_if (line 23) | def skip_if(condition, reason): function skip_unless (line 33) | def skip_unless(condition, reason): function expected_failure (line 43) | def expected_failure(test_item): function depend (line 52) | def depend(case=None): function if_depend (line 77) | def if_depend(value): function label (line 93) | def label(*labels): function rerun (line 112) | def rerun(times: int = 2): FILE: seldom/swagger2case/core.py class SwaggerParser (line 8) | class SwaggerParser: method __init__ (line 10) | def __init__(self, swagger: str, online=False): method local_swagger_file (line 22) | def local_swagger_file(file_path: str) -> dict: method online_swagger_doc (line 33) | def online_swagger_doc(url: str) -> dict: method create_file (line 43) | def create_file(save_path: str, code: str = "") -> None: method swagger_to_seldom_code (line 51) | def swagger_to_seldom_code(self, swagger_doc: dict) -> str: method gen_testcase (line 128) | def gen_testcase(self) -> None: FILE: seldom/testdata/conversion.py function check_data (line 13) | def check_data(list_data: list) -> list: function csv_to_list (line 35) | def csv_to_list(file: str = None, line: int = 1, end_line: int = None) -... function excel_to_list (line 58) | def excel_to_list(file: str = None, sheet: str = "Sheet1", line: int = 1... function json_to_list (line 88) | def json_to_list(file: str = None, key: str = None) -> list: function yaml_to_list (line 116) | def yaml_to_list(file: str = None, key: str = None) -> list: FILE: seldom/testdata/parameterization.py function _search_file_path (line 33) | def _search_file_path(file_name: str, file_dir: Path) -> str: function _search_env_file_path (line 59) | def _search_env_file_path(file_dir: Path, file_part_path: str) -> str: function find_file (line 82) | def find_file(file: str, file_dir: Path) -> str: function file_data (line 111) | def file_data(file: str, line: int = 1, sheet: str = "Sheet1", key: str ... function api_data (line 169) | def api_data(url: str = None, params: dict = None, headers: dict = None,... function data (line 198) | def data(input, name_func=None, doc_func=None, skip_on_empty=False, cart... function data_class (line 267) | def data_class(attrs, input_values=None, class_name_func=None): function default_name_func (line 274) | def default_name_func(func, num, p): function default_doc_func (line 287) | def default_doc_func(func, num, p): function cartesian_product (line 315) | def cartesian_product(arr) -> list: FILE: seldom/testdata/random_func.py function first_name (line 31) | def first_name(gender: str = "", language: str = "en") -> str: function last_name (line 65) | def last_name(language: str = "en") -> str: function username (line 81) | def username(name: str = "", language: str = "en") -> str: function password (line 98) | def password(length: int = 12) -> str: function get_email (line 119) | def get_email(name: str = "") -> str: function get_md5 (line 140) | def get_md5(val: str = "") -> str: function get_uuid (line 157) | def get_uuid() -> str: function get_int (line 164) | def get_int(min_size: int = 1, max_size=sys.maxsize) -> int: function get_int32 (line 173) | def get_int32(min_size: int = 1) -> int: function get_int64 (line 180) | def get_int64(min_size=1): function get_float (line 185) | def get_float(min_size: float = None, max_size: float = None) -> float: function get_digits (line 202) | def get_digits(count: int) -> str: function get_string (line 214) | def get_string(length: int = 8) -> str: function get_number (line 224) | def get_number(length: int = 8) -> int: function yes (line 237) | def yes(specifier=0) -> int: function get_words (line 287) | def get_words(count: int = 0, as_str: bool = True, words=None) -> str: function get_word (line 305) | def get_word(words=None) -> str: function get_birthday (line 310) | def get_birthday(as_str: bool = False, start_age: int = 18, stop_age: in... function get_past_datetime (line 335) | def get_past_datetime(now=None, strftime=False) -> datetime: function get_future_datetime (line 355) | def get_future_datetime(now=None, strftime=False) -> datetime: function get_now_datetime (line 375) | def get_now_datetime(strftime=False) -> [str, datetime]: function get_past_time (line 386) | def get_past_time() -> str: function get_future_time (line 396) | def get_future_time() -> datetime: function get_date (line 406) | def get_date(day=None) -> str: function get_month (line 419) | def get_month(month: int = None) -> str: function get_year (line 433) | def get_year(year: int = None) -> str: function get_phone (line 447) | def get_phone(operator: str = None) -> str: function get_timestamp (line 469) | def get_timestamp(level="second") -> str: function online_timestamp (line 483) | def online_timestamp() -> str: function online_now_datetime (line 494) | def online_now_datetime() -> [str, datetime]: FILE: seldom/utils/adbutils.py class ADBUtils (line 11) | class ADBUtils: method __init__ (line 17) | def __init__(self, default_device: str = None): method _safe_popen (line 28) | def _safe_popen(self, command: str): method refresh_devices (line 48) | def refresh_devices(self, force: bool = False) -> List[Tuple[str, str]]: method _get_device_name (line 78) | def _get_device_name(self, device_serial: str) -> str: method set_default_device (line 92) | def set_default_device(self, device_serial: str) -> bool: method launch_app (line 105) | def launch_app(self, package_name: str, device_id: Optional[str] = Non... method close_app (line 121) | def close_app(self, package_name: str, device_id: Optional[str] = None... method get_app_info (line 137) | def get_app_info(self, device_id: Optional[str] = None) -> dict: method _parse_window_dump (line 176) | def _parse_window_dump(self, dump_content: str) -> List[dict]: FILE: seldom/utils/benchmark.py class Benchmark (line 5) | class Benchmark: method __init__ (line 10) | def __init__(self): method measure (line 14) | def measure(func: Callable, rounds: int, iterations: int, *args: Any, ... method add_result (line 35) | def add_result(self, test_name: str, durations: List[float], iteration... method get_stats (line 48) | def get_stats(self, test_name: str) -> Dict[str, Any]: method report (line 75) | def report(self) -> None: method get_outliers (line 99) | def get_outliers(self, durations: List[float], mean: float, stddev: fl... method mean (line 125) | def mean(self, data: List[float]) -> float: method stddev (line 129) | def stddev(self, data: List[float], mean: float) -> float: method median (line 134) | def median(self, data: List[float]) -> float: method percentile (line 143) | def percentile(self, data: List[float], p: float) -> float: method iqr (line 154) | def iqr(self, data: List[float]) -> float: function benchmark_test (line 162) | def benchmark_test(rounds: int = 5, iterations: int = 1): FILE: seldom/utils/cache.py class Cache (line 18) | class Cache: method __init__ (line 24) | def __init__(self): method clear (line 31) | def clear(name: str = None) -> None: method set (line 53) | def set(data: dict) -> None: method get (line 74) | def get(name=None): function memory_cache (line 96) | def memory_cache(maxsize=None, typed=False): class DiskCache (line 102) | class DiskCache: method __init__ (line 109) | def __init__(self, cache_path=None): method __call__ (line 115) | def __call__(self, func): method clear (line 146) | def clear(self, func_name: str = None) -> None: FILE: seldom/utils/dependence.py function dependent_func (line 7) | def dependent_func(func_obj: Callable, key_name: Text = None, *out_args,... function _call_dependence (line 45) | def _call_dependence(dependent_api: Callable or Text, func_name: Text, *... FILE: seldom/utils/diff.py class AssertInfo (line 8) | class AssertInfo: function _all_values_are_same (line 16) | def _all_values_are_same(input_list) -> bool: function _list_sorted (line 23) | def _list_sorted(data): function diff_json (line 49) | def diff_json(response_data: Any, assert_data: Any, exclude: list = None... FILE: seldom/utils/encrypt.py class CipherMode (line 44) | class CipherMode(Enum): function encrypt_handler (line 53) | def encrypt_handler(func): class HashUtil (line 69) | class HashUtil: method md5 (line 74) | def md5(text: str, encoding: str = 'utf-8') -> str: method sha1 (line 80) | def sha1(text: str, encoding: str = 'utf-8') -> str: method sha256 (line 86) | def sha256(text: str, encoding: str = 'utf-8') -> str: method sha512 (line 92) | def sha512(text: str, encoding: str = 'utf-8') -> str: method hmac_sha256 (line 98) | def hmac_sha256(key: str, text: str, encoding: str = 'utf-8') -> str: class AESUtil (line 107) | class AESUtil: method _pad_key (line 111) | def _pad_key(key: bytes) -> bytes: method encrypt (line 123) | def encrypt(key: str, text: str, mode: CipherMode = CipherMode.CBC, method decrypt (line 160) | def decrypt(key: str, encrypted_text: str, mode: CipherMode = CipherMo... class DESUtil (line 201) | class DESUtil: method _pad_key (line 205) | def _pad_key(key: bytes) -> bytes: method encrypt (line 211) | def encrypt(key: str, text: str, mode: CipherMode = CipherMode.CBC, method decrypt (line 248) | def decrypt(key: str, encrypted_text: str, mode: CipherMode = CipherMo... class TripleDESUtil (line 289) | class TripleDESUtil: method _pad_key (line 293) | def _pad_key(key: bytes) -> bytes: method encrypt (line 299) | def encrypt(key: str, text: str, mode: CipherMode = CipherMode.CBC, method decrypt (line 336) | def decrypt(key: str, encrypted_text: str, mode: CipherMode = CipherMo... class RSAUtil (line 377) | class RSAUtil: method __init__ (line 380) | def __init__(self, public_key: Optional[str] = None, method generate_key_pair (line 394) | def generate_key_pair(bits: int = 2048) -> tuple[str, str]: method encrypt (line 410) | def encrypt(self, text: str, encoding: str = 'utf-8') -> str: method decrypt (line 429) | def decrypt(self, encrypted_text: str, encoding: str = 'utf-8') -> str: class EncodeUtil (line 449) | class EncodeUtil: method base64_encode (line 454) | def base64_encode(text: str, encoding: str = 'utf-8') -> str: method base64_decode (line 460) | def base64_decode(text: str, encoding: str = 'utf-8') -> str: method url_encode (line 466) | def url_encode(text: str) -> str: method url_decode (line 472) | def url_decode(text: str) -> str: method html_encode (line 478) | def html_encode(text: str) -> str: method html_decode (line 484) | def html_decode(text: str) -> str: method base16_encode (line 490) | def base16_encode(text: str, encoding: str = 'utf-8') -> str: method base16_decode (line 496) | def base16_decode(text: str, encoding: str = 'utf-8') -> str: method base32_encode (line 502) | def base32_encode(text: str, encoding: str = 'utf-8') -> str: method base32_decode (line 508) | def base32_decode(text: str, encoding: str = 'utf-8') -> str: method base85_encode (line 514) | def base85_encode(text: str, encoding: str = 'utf-8') -> str: method base85_decode (line 520) | def base85_decode(text: str, encoding: str = 'utf-8') -> str: class EncryptUtil (line 525) | class EncryptUtil: method aes (line 533) | def aes() -> Type[AESUtil]: method des (line 538) | def des() -> Type[DESUtil]: method des3 (line 543) | def des3() -> Type[TripleDESUtil]: method rsa (line 548) | def rsa(public_key: Optional[str] = None, FILE: seldom/utils/file_extend.py class FindFilePath (line 10) | class FindFilePath: method __new__ (line 13) | def __new__(cls, name: str = None) -> str: class File (line 36) | class File: method _get_caller_path (line 40) | def _get_caller_path(min_stack_level: int = 2) -> str: method path (line 53) | def path(self) -> str: method dir (line 61) | def dir(self) -> str: method parent_dir (line 70) | def parent_dir(self, level: int = 1) -> str: method dir_dir (line 80) | def dir_dir(self) -> str: method dir_dir_dir (line 90) | def dir_dir_dir(self) -> str: method add_to_path (line 100) | def add_to_path(path: str = None) -> None: method join (line 110) | def join(a, *paths): method remove (line 117) | def remove(path) -> None: FILE: seldom/utils/genson.py function genson (line 9) | def genson(data: dict = None): FILE: seldom/utils/jmespath.py function jmespath (line 8) | def jmespath(data, expression, options=None): FILE: seldom/utils/match_image.py function save_screenshot (line 12) | def save_screenshot(page, file_path: str) -> None: function compare_images (line 25) | def compare_images(img1_path: str, img2_path: str, tolerance: int = 0) -... function assert_screenshot (line 53) | def assert_screenshot(page, tolerance: int = 0, stack_t=None) -> bool | ... FILE: seldom/utils/resource_loader.py function resource_file (line 10) | def resource_file( function _load_cached_file (line 63) | def _load_cached_file(file_path: Path, is_json: bool) -> str | Dict[str,... function _get_nested_value (line 76) | def _get_nested_value(data: Dict[str, Any], key_path: str) -> Any: FILE: seldom/utils/send_extend.py class SMTP (line 16) | class SMTP(XSMTP): method sendmail (line 19) | def sendmail(self, to: str | list[str], subject: str = None, attachmen... class DingTalk (line 41) | class DingTalk(XDingTalk): class FeiShu (line 47) | class FeiShu(XFeiShu): class Weinxin (line 53) | class Weinxin(XWeinxin): class RunResult (line 59) | class RunResult(XRunResult): FILE: seldom/utils/thread_lab.py class ThreadWait (line 8) | class ThreadWait: class SeldomThread (line 17) | class SeldomThread(Thread): method __init__ (line 20) | def __init__(self, func, name='', *args, **kwargs): method run (line 28) | def run(self): method get_result (line 37) | def get_result(self): method __init__ (line 42) | def __init__(self, func): method __call__ (line 45) | def __call__(self, *args, **kwargs): method get_all_result (line 52) | def get_all_result(cls): FILE: seldom/utils/timer.py function timer (line 5) | def timer(func): FILE: seldom/webcommon/find_elems.py class WebElement (line 13) | class WebElement: method __init__ (line 16) | def __init__(self, browser, selector: str = None, **kwargs) -> None: method find (line 34) | def find(self, index: int = None, empty: bool = False, highlight: bool... method _highlight_element (line 67) | def _highlight_element(self, elem=None) -> None: method info (line 89) | def info(self): method warn (line 94) | def warn(self): FILE: seldom/webcommon/keyboard.py class KeysClass (line 9) | class KeysClass: method __init__ (line 17) | def __init__(self, browser, selector: str = None, index: int = 0, **kw... method input (line 22) | def input(self, text=""): method enter (line 32) | def enter(self): method select_all (line 41) | def select_all(self): method cut (line 53) | def cut(self): method copy (line 65) | def copy(self): method paste (line 77) | def paste(self): method backspace (line 89) | def backspace(self): method delete (line 98) | def delete(self): method tab (line 107) | def tab(self): method space (line 114) | def space(self): FILE: seldom/webcommon/selector.py function selection_checker (line 6) | def selection_checker(selector: str) -> (str, str): FILE: seldom/webdriver.py class WebDriver (line 32) | class WebDriver: method __init__ (line 39) | def __init__(self, browser_name: str = None, is_new: bool = False, ima... method Keys (line 51) | def Keys(self, selector: str = None, index: int = 0, **kwargs) -> Keys... class Alert (line 56) | class Alert: method __init__ (line 61) | def __init__(self, browser): method text (line 65) | def text(self) -> str: method dismiss (line 72) | def dismiss(self) -> None: method accept (line 79) | def accept(self): method send_keys (line 89) | def send_keys(self, text: str) -> None: method prompt_value (line 99) | def prompt_value(self, text: str): method alert (line 109) | def alert(self) -> Alert: method visit (line 114) | def visit(self, url: str) -> None: method open_electron (line 128) | def open_electron(self, app_path: str, disable_gpu: bool = False, chro... method open (line 145) | def open(self, url: str) -> None: method page_source (line 155) | def page_source(self) -> str: method execute_cdp_cmd (line 163) | def execute_cdp_cmd(self, cmd: str, cmd_args: dict): method get_log (line 172) | def get_log(self, log_type: str): method max_window (line 184) | def max_window(self) -> None: method set_window (line 193) | def set_window(self, wide: int = 0, high: int = 0) -> None: method get_windows (line 202) | def get_windows(self) -> dict: method type (line 211) | def type(self, selector: str = None, text: str = "", clear: bool = Fal... method type_enter (line 232) | def type_enter(self, selector: str = None, text: str = "", clear: bool... method clear (line 248) | def clear(self, selector: str = None, index: int = 0, **kwargs) -> None: method click (line 260) | def click(self, selector: str = None, index: int = 0, **kwargs) -> None: method slow_click (line 273) | def slow_click(self, selector: str = None, index: int = 0, **kwargs) -... method right_click (line 285) | def right_click(self, selector: str = None, index: int = 0, **kwargs) ... method move_to_element (line 297) | def move_to_element(self, selector: str = None, index: int = 0, **kwar... method click_and_hold (line 309) | def click_and_hold(self, selector: str = None, index: int = 0, **kwarg... method drag_and_drop_by_offset (line 321) | def drag_and_drop_by_offset(self, selector: str = None, index: int = 0... method double_click (line 337) | def double_click(self, selector: str = None, index: int = 0, **kwargs)... method action_chains (line 349) | def action_chains(self) -> ActionChains: method click_text (line 356) | def click_text(self, text: str, index: int = 0) -> None: method close (line 368) | def close(self) -> None: method submit (line 378) | def submit(self, selector: str = None, index: int = 0, **kwargs) -> None: method refresh (line 390) | def refresh(self) -> None: method execute_script (line 400) | def execute_script(self, script: str, *args): method window_scroll (line 409) | def window_scroll(self, width: int = 0, height: int = 0) -> None: method element_scroll (line 419) | def element_scroll(self, css: str, width: int = 0, height: int = 0) ->... method get_attribute (line 431) | def get_attribute(self, selector: str = None, attribute=None, index: i... method get_text (line 445) | def get_text(self, selector: str = None, index: int = 0, **kwargs) -> ... method get_display (line 457) | def get_display(self, selector: str = None, index: int = 0, **kwargs) ... method get_title (line 471) | def get_title(self) -> str: method get_url (line 482) | def get_url(self) -> str: method get_alert_text (line 493) | def get_alert_text(self) -> str: method wait (line 504) | def wait(self, secs: int = 10) -> None: method is_visible (line 514) | def is_visible(self, timeout: float = 5, **kwargs) -> bool: method accept_alert (line 532) | def accept_alert(self) -> None: method dismiss_alert (line 543) | def dismiss_alert(self) -> None: method switch_to_frame (line 554) | def switch_to_frame(self, selector: str = None, index: int = 0, **kwar... method switch_to_frame_parent (line 566) | def switch_to_frame_parent(self) -> None: method switch_to_frame_out (line 577) | def switch_to_frame_out(self) -> None: method switch_to_window (line 588) | def switch_to_window(self, window: int) -> None: method switch_to_new_window (line 602) | def switch_to_new_window(self, type_hint=None) -> None: method save_screenshot (line 615) | def save_screenshot(self, file_path: str = None, selector: str = None,... method screenshots (line 640) | def screenshots(self, image=None) -> None: method element_screenshot (line 663) | def element_screenshot(self, selector: str = None, index: int = 0, **k... method select (line 685) | def select(self, selector: str = None, value: str = None, text: str = ... method get_cookies (line 718) | def get_cookies(self) -> list: method get_cookie (line 726) | def get_cookie(self, name: str) -> dict: method add_cookie (line 734) | def add_cookie(self, cookie_dict: dict) -> None: method add_cookies (line 745) | def add_cookies(self, cookie_list: list) -> None: method delete_cookie (line 764) | def delete_cookie(self, name: str) -> None: method delete_all_cookies (line 772) | def delete_all_cookies(self) -> None: method check_element (line 780) | def check_element(self, css: str = None) -> None: method get_elements (line 801) | def get_elements(self, selector: str = None, **kwargs): method get_element (line 817) | def get_element(self, selector: str = None, index: int = 0, **kwargs): method switch_to_app (line 830) | def switch_to_app(self) -> None: method switch_to_web (line 840) | def switch_to_web(self, context=None) -> None: method switch_to_flutter (line 860) | def switch_to_flutter(self) -> None: FILE: seldom/webdriver_chaining.py class Steps (line 22) | class Steps: method __init__ (line 28) | def __init__(self, browser=None, url: str = None, desc: str = None, im... method open (line 42) | def open(self, url: str = None): method max_window (line 61) | def max_window(self): method set_window (line 71) | def set_window(self, wide: int = 0, high: int = 0): method find (line 81) | def find(self, selector: str, index: int = 0): method find_text (line 90) | def find_text(self, text: str, index: int = 0): method type (line 102) | def type(self, text): method click (line 110) | def click(self): method clear (line 118) | def clear(self): method submit (line 128) | def submit(self): method enter (line 138) | def enter(self): method move_to_click (line 148) | def move_to_click(self): method right_click (line 158) | def right_click(self): method move_to_element (line 169) | def move_to_element(self): method click_and_hold (line 180) | def click_and_hold(self): method double_click (line 192) | def double_click(self): method close (line 203) | def close(self): method quit (line 213) | def quit(self): method refresh (line 223) | def refresh(self): method alert (line 234) | def alert(self): method accept (line 244) | def accept(self): method dismiss (line 255) | def dismiss(self): method switch_to_frame (line 266) | def switch_to_frame(self): method switch_to_frame_out (line 277) | def switch_to_frame_out(self): method switch_to_window (line 289) | def switch_to_window(self, window: int): method screenshots (line 304) | def screenshots(self, file_path: str = None): method element_screenshot (line 321) | def element_screenshot(self, file_path: str = None): method select (line 338) | def select(self, value: str = None, text: str = None, index: int = None): method sleep (line 370) | def sleep(self, sec: [int, tuple] = 1): FILE: seldom/websocket_client.py class WebSocketClient (line 8) | class WebSocketClient(Thread): method __init__ (line 13) | def __init__(self, url): method run (line 20) | def run(self): method send_message (line 49) | def send_message(self, message): method stop (line 61) | def stop(self): method on_open (line 70) | def on_open(): method on_error (line 78) | def on_error(error): method on_close (line 86) | def on_close(self): FILE: tests/test_adb.py class ADBUtilsTest (line 7) | class ADBUtilsTest(unittest.TestCase): method setUp (line 9) | def setUp(self): method test_devices (line 12) | def test_devices(self): method test_app_lunch_and_close (line 20) | def test_app_lunch_and_close(self): method test_app_info (line 29) | def test_app_info(self): FILE: tests/test_api_object.py class LoginApiObject (line 6) | class LoginApiObject(HttpRequest): method get_login_user (line 18) | def get_login_user(self): class LoginTest (line 27) | class LoginTest(seldom.TestCase): method test_user_login (line 29) | def test_user_login(self): FILE: tests/test_autowing.py class TestBingSearch (line 10) | class TestBingSearch(seldom.TestCase): method start_class (line 13) | def start_class(cls): method test_bing_search (line 20) | def test_bing_search(self): FILE: tests/test_base_assert.py class TestAssertions (line 4) | class TestAssertions(seldom.TestCase): method test_assertEqual (line 5) | def test_assertEqual(self): method test_assertTrue (line 14) | def test_assertTrue(self): method test_assertIn (line 23) | def test_assertIn(self): method test_assertIsInstance (line 32) | def test_assertIsInstance(self): method test_assertRegex (line 41) | def test_assertRegex(self): method test_assertAlmostEqual (line 50) | def test_assertAlmostEqual(self): method test_assertGreater (line 59) | def test_assertGreater(self): method test_assertLess (line 68) | def test_assertLess(self): method test_assertCountEqual (line 77) | def test_assertCountEqual(self): FILE: tests/test_benchmark.py class MyTests (line 7) | class MyTests(seldom.TestCase): method test_something_performance_1 (line 10) | def test_something_performance_1(self): method test_something_performance_2 (line 18) | def test_something_performance_2(self): method test_http_performance (line 26) | def test_http_performance(self): FILE: tests/test_browser.py class WebTestOne (line 4) | class WebTestOne(seldom.TestCase): method start (line 7) | def start(self): method end (line 10) | def end(self): method test_baidu (line 13) | def test_baidu(self): method test_bing (line 20) | def test_bing(self): class WebTestTwo (line 28) | class WebTestTwo(seldom.TestCase): method start_class (line 32) | def start_class(cls): method end_class (line 36) | def end_class(cls): method test_baidu (line 39) | def test_baidu(self): method test_bing (line 46) | def test_bing(self): FILE: tests/test_browser_new.py class WebTestNew (line 4) | class WebTestNew(seldom.TestCase): method test_new_browser (line 7) | def test_new_browser(self): FILE: tests/test_cache/test_cache_thread.py function operating_token (line 12) | def operating_token(tk: str): FILE: tests/test_cache/test_memory_cache.py function add (line 8) | def add(x, y): class MyTest (line 14) | class MyTest(seldom.TestCase): method test_case (line 16) | def test_case(self): method test_case2 (line 21) | def test_case2(self): method test_case3 (line 26) | def test_case3(self): method test_case4 (line 31) | def test_case4(self): FILE: tests/test_db/test_db_mssql.py class MSSQLTest (line 12) | class MSSQLTest(unittest.TestCase): method setUp (line 15) | def setUp(self) -> None: method tearDown (line 20) | def tearDown(self) -> None: method test_query_sql (line 23) | def test_query_sql(self): method test_query_one (line 28) | def test_query_one(self): method test_execute_sql (line 33) | def test_execute_sql(self): method test_select_sql (line 42) | def test_select_sql(self): method test_delete_sql (line 49) | def test_delete_sql(self): method test_update_sql (line 55) | def test_update_sql(self): method test_insert_sql (line 61) | def test_insert_sql(self): method test_init_table (line 68) | def test_init_table(self): FILE: tests/test_db/test_db_mysql.py class MySQLTest (line 11) | class MySQLTest(unittest.TestCase): method setUp (line 14) | def setUp(self) -> None: method tearDown (line 19) | def tearDown(self) -> None: method test_query_sql (line 22) | def test_query_sql(self): method test_query_one (line 27) | def test_query_one(self): method test_execute_sql (line 32) | def test_execute_sql(self): method test_select_sql (line 41) | def test_select_sql(self): method test_delete_sql (line 48) | def test_delete_sql(self): method test_update_sql (line 55) | def test_update_sql(self): method test_insert_sql (line 61) | def test_insert_sql(self): method test_init_table (line 68) | def test_init_table(self): FILE: tests/test_db/test_db_postgresdb.py class PostgresDBTest (line 12) | class PostgresDBTest(unittest.TestCase): method setUp (line 13) | def setUp(self) -> None: method tearDown (line 21) | def tearDown(self) -> None: method test_query_sql (line 24) | def test_query_sql(self): method test_query_one (line 29) | def test_query_one(self): method test_execute_sql (line 34) | def test_execute_sql(self): method test_select_sql (line 43) | def test_select_sql(self): method test_delete_sql (line 50) | def test_delete_sql(self): method test_update_sql (line 57) | def test_update_sql(self): method test_insert_sql (line 63) | def test_insert_sql(self): FILE: tests/test_db/test_db_sqlite3.py class SQLite3Test (line 12) | class SQLite3Test(unittest.TestCase): method setUp (line 15) | def setUp(self) -> None: method tearDown (line 21) | def tearDown(self) -> None: method test_query_sql (line 24) | def test_query_sql(self): method test_query_one (line 29) | def test_query_one(self): method test_execute_sql (line 34) | def test_execute_sql(self): method test_select_sql (line 43) | def test_select_sql(self): method test_delete_sql (line 50) | def test_delete_sql(self): method test_update_sql (line 57) | def test_update_sql(self): method test_insert_sql (line 63) | def test_insert_sql(self): method test_init_table (line 70) | def test_init_table(self): FILE: tests/test_dependent_func.py class DependentTest (line 6) | class DependentTest(seldom.TestCase): method user_login (line 9) | def user_login(username, password): method test_case (line 16) | def test_case(self): FILE: tests/test_encrypt.py class TestHashUtil (line 16) | class TestHashUtil(unittest.TestCase): method test_md5 (line 19) | def test_md5(self): method test_sha1 (line 24) | def test_sha1(self): method test_sha256 (line 29) | def test_sha256(self): method test_sha512 (line 34) | def test_sha512(self): method test_hmac_sha256 (line 40) | def test_hmac_sha256(self): class TestAESUtil (line 47) | class TestAESUtil(unittest.TestCase): method test_encrypt_decrypt_cbc (line 50) | def test_encrypt_decrypt_cbc(self): method test_encrypt_decrypt_ecb (line 57) | def test_encrypt_decrypt_ecb(self): class TestDESUtil (line 65) | class TestDESUtil(unittest.TestCase): method test_encrypt_decrypt_cbc (line 68) | def test_encrypt_decrypt_cbc(self): method test_encrypt_decrypt_ecb (line 75) | def test_encrypt_decrypt_ecb(self): class TestTripleDESUtil (line 83) | class TestTripleDESUtil(unittest.TestCase): method test_encrypt_decrypt_cbc (line 86) | def test_encrypt_decrypt_cbc(self): method test_encrypt_decrypt_ecb (line 93) | def test_encrypt_decrypt_ecb(self): class TestRSAUtil (line 101) | class TestRSAUtil(unittest.TestCase): method setUp (line 104) | def setUp(self): method test_encrypt_decrypt (line 107) | def test_encrypt_decrypt(self): class TestEncodeUtil (line 115) | class TestEncodeUtil(unittest.TestCase): method test_base64_encode_decode (line 118) | def test_base64_encode_decode(self): method test_url_encode_decode (line 124) | def test_url_encode_decode(self): method test_html_encode_decode (line 130) | def test_html_encode_decode(self): class TestEncryptUtil (line 137) | class TestEncryptUtil(unittest.TestCase): method test_hash_util (line 140) | def test_hash_util(self): method test_encode_util (line 143) | def test_encode_util(self): method test_aes_util (line 146) | def test_aes_util(self): method test_des_util (line 149) | def test_des_util(self): method test_des3_util (line 152) | def test_des3_util(self): method test_rsa_util (line 155) | def test_rsa_util(self): FILE: tests/test_fixture.py class TestCase (line 4) | class TestCase(seldom.TestCase): method start_class (line 7) | def start_class(cls): method end_class (line 11) | def end_class(cls): method start (line 14) | def start(self): method end (line 17) | def end(self): method test_case_one (line 20) | def test_case_one(self): method test_case_two (line 23) | def test_case_two(self): FILE: tests/test_graphql.py class TestGraphQL (line 6) | class TestGraphQL(TestCase): method test_graphql_query (line 8) | def test_graphql_query(self): FILE: tests/test_http_assert.py class TestHttpAssert (line 5) | class TestHttpAssert(seldom.TestCase): method test_assert_json (line 7) | def test_assert_json(self): method test_assert_path (line 19) | def test_assert_path(self): method test_assert_schema (line 29) | def test_assert_schema(self): FILE: tests/test_jsonpath.py class JSONPathTest (line 26) | class JSONPathTest(unittest.TestCase): method test_case (line 28) | def test_case(self): method test_case1 (line 32) | def test_case1(self): method test_case2 (line 36) | def test_case2(self): method test_case3 (line 40) | def test_case3(self): method test_case4 (line 45) | def test_case4(self): FILE: tests/test_locators.py class TestForm (line 8) | class TestForm(seldom.TestCase): method start (line 10) | def start(self): method test_locator (line 14) | def test_locator(self): method test_selector (line 26) | def test_selector(self): method test_step (line 38) | def test_step(self): FILE: tests/test_log.py class TestCase (line 7) | class TestCase(seldom.TestCase): method test_case (line 8) | def test_case(self): method test_case2 (line 14) | def test_case2(self): method test_ddt (line 23) | def test_ddt(self, _, keyword): method test_failed (line 28) | def test_failed(self): method test_error (line 32) | def test_error(self): FILE: tests/test_other_lib/test_playwright.py class Playwright (line 10) | class Playwright(seldom.TestCase): method start (line 12) | def start(self): method end (line 17) | def end(self): method test_playwright_start (line 21) | def test_playwright_start(self): method test_playwright_todo (line 37) | def test_playwright_todo(self): FILE: tests/test_other_lib/test_pyautogui.py class TestPyAutoGUINote (line 7) | class TestPyAutoGUINote(seldom.TestCase): method start (line 9) | def start(self): method end (line 14) | def end(self): method test_write_and_save (line 18) | def test_write_and_save(self): FILE: tests/test_other_lib/test_uiautomator.py class MyAppTest (line 5) | class MyAppTest(seldom.TestCase): method start (line 7) | def start(self): method end (line 13) | def end(self): method test_app (line 17) | def test_app(self, user): FILE: tests/test_playwright_sample.py class Playwright (line 11) | class Playwright(seldom.TestCase): method start (line 13) | def start(self): method end (line 18) | def end(self): method test_start (line 21) | def test_start(self): FILE: tests/test_random/test_testdata.py class TestRandomData (line 10) | class TestRandomData(seldom.TestCase): method test_print_data (line 12) | def test_print_data(self): FILE: tests/test_request_extend.py class TestSaveResp (line 4) | class TestSaveResp(seldom.TestCase): method test_save_response (line 6) | def test_save_response(self): class TestReqIP (line 12) | class TestReqIP(seldom.TestCase): method test_get_ip_address (line 14) | def test_get_ip_address(self): FILE: tests/test_skip.py class SkipTest (line 5) | class SkipTest(seldom.TestCase): method test_case (line 7) | def test_case(self): class YouTest (line 11) | class YouTest(seldom.TestCase): method test_skip_case (line 14) | def test_skip_case(self): method test_if_skip (line 17) | def test_if_skip(self): FILE: tests/test_steps_chaining.py class WebTestChaining (line 5) | class WebTestChaining(seldom.TestCase): method test_baidu (line 8) | def test_baidu(self): method test_bing (line 13) | def test_bing(self): FILE: tests/test_steps_chaining_browser.py class WebTestChaining (line 5) | class WebTestChaining(seldom.TestCase): method start (line 8) | def start(self): method end (line 11) | def end(self): method test_baidu (line 14) | def test_baidu(self): method test_bing (line 19) | def test_bing(self): FILE: tests/test_thread/test_thread.py function slow_event (line 13) | def slow_event(case_name, s): class MyTest (line 25) | class MyTest(seldom.TestCase): method start_class (line 28) | def start_class(cls): method end_class (line 32) | def end_class(self): method test_case_success (line 40) | def test_case_success(self): method test_case_fail (line 46) | def test_case_fail(self): method test_ddt (line 57) | def test_ddt(self, _, name, sec, ret): FILE: tests/test_thread/test_thread_browser.py class BingTest (line 6) | class BingTest(seldom.TestCase): method test_case (line 9) | def test_case(self): function run_case (line 19) | def run_case(browser): FILE: tests/test_thread/test_thread_case.py class MyTest (line 6) | class MyTest(seldom.TestCase): method test_baidu (line 8) | def test_baidu(self): method test_bing (line 12) | def test_bing(self): function run_case (line 20) | def run_case(case: str): FILE: tests/test_thread/test_thread_path.py function run_case (line 6) | def run_case(path: str): FILE: tests/test_utils/test_file.py class TestFilePathUtils (line 6) | class TestFilePathUtils(unittest.TestCase): method test_path_is_string_and_correct (line 8) | def test_path_is_string_and_correct(self): method test_dir_is_string_and_correct (line 14) | def test_dir_is_string_and_correct(self): method test_dir_dir_is_string_and_correct (line 20) | def test_dir_dir_is_string_and_correct(self): method test_dir_dir_dir_is_string_and_correct (line 26) | def test_dir_dir_dir_is_string_and_correct(self): method test_parent_dir_is_string_and_correct (line 32) | def test_parent_dir_is_string_and_correct(self): FILE: tests/test_websocket/test_websocket.py class WebSocketTest (line 6) | class WebSocketTest(seldom.TestCase): method start (line 8) | def start(self): method end (line 15) | def end(self): method test_send_and_receive_message (line 22) | def test_send_and_receive_message(self): FILE: tests/test_websocket/webscoket_server.py function websocket_handler (line 5) | async def websocket_handler(request):