Skip to content

Latest commit

 

History

History
103 lines (57 loc) · 5.68 KB

File metadata and controls

103 lines (57 loc) · 5.68 KB
graph LR
    Appium_WebDriver_Core["Appium WebDriver Core"]
    Mobile_Command_Definitions["Mobile Command Definitions"]
    Context_Switching_Logic["Context Switching Logic"]
    Appium_Clipboard_Extension["Appium Clipboard Extension"]
    Appium_Context_Extension["Appium Context Extension"]
    Appium_Device_Time_Extension["Appium Device Time Extension"]
    Flutter_Element_Finder["Flutter Element Finder"]
    Flutter_Command_Executor["Flutter Command Executor"]
    Appium_WebDriver_Core -- "utilizes" --> Mobile_Command_Definitions
    Appium_WebDriver_Core -- "integrates" --> Appium_Clipboard_Extension
    Appium_WebDriver_Core -- "integrates" --> Appium_Context_Extension
    Appium_WebDriver_Core -- "integrates" --> Appium_Device_Time_Extension
    Appium_WebDriver_Core -- "integrates" --> Flutter_Element_Finder
    Appium_WebDriver_Core -- "integrates" --> Flutter_Command_Executor
    Mobile_Command_Definitions -- "provides definitions for" --> Appium_Clipboard_Extension
    Mobile_Command_Definitions -- "provides definitions for" --> Appium_Device_Time_Extension
    Appium_Context_Extension -- "delegates to" --> Context_Switching_Logic
    Flutter_Element_Finder -- "generates locators for" --> Flutter_Command_Executor
Loading

CodeBoardingDemoContact

Details

The Appium Python Client Core subsystem is centered around the appium.webdriver.webdriver component, which acts as the primary interface for test scripts. It encompasses the core WebDriver functionality extended with Appium-specific capabilities, including command orchestration, session management, and integration of various Appium extensions.

Appium WebDriver Core

The central component, serving as the primary interface for test scripts. It extends Selenium's WebDriver to manage the session, orchestrate command execution, and integrate Appium-specific extensions, providing the main entry point for automation.

Related Classes/Methods:

Mobile Command Definitions

Defines a set of constants representing Appium-specific mobile commands. It ensures consistent command naming across the client and is crucial for abstracting the underlying W3C WebDriver Protocol, acting as a registry for all supported Appium commands.

Related Classes/Methods:

Context Switching Logic

Provides the underlying mechanism for WebDriver's context switching operations. While Appium Context Extension offers the user-facing API, this component handles the low-level logic for managing different application contexts (e.g., native, webview).

Related Classes/Methods:

Appium Clipboard Extension

Extends the core WebDriver functionality with Appium-specific features for interacting with the device's clipboard, allowing test scripts to get and set clipboard content.

Related Classes/Methods:

Appium Context Extension

Extends the core WebDriver functionality with Appium-specific features, specifically providing the user-facing API for context switching between native, webview, and other application contexts.

Related Classes/Methods:

Appium Device Time Extension

Extends the core WebDriver functionality with Appium-specific features for managing and retrieving the device's time settings.

Related Classes/Methods:

Flutter Element Finder

A specialized extension providing element location capabilities specifically for Flutter applications, enabling the identification of Flutter widgets within the application's UI tree.

Related Classes/Methods:

Flutter Command Executor

A specialized extension for executing actions on Flutter elements, working in conjunction with the Flutter Element Finder to interact with identified Flutter widgets.

Related Classes/Methods: