Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feat]: Provide a Friendly Method for mobile: launchApp Execution #924

Open
Dor-bl opened this issue Mar 16, 2025 · 0 comments
Open

[Feat]: Provide a Friendly Method for mobile: launchApp Execution #924

Dor-bl opened this issue Mar 16, 2025 · 0 comments

Comments

@Dor-bl
Copy link
Collaborator

Dor-bl commented Mar 16, 2025

Background

Currently, Appium’s XCUITest driver provides the mobile: launchApp execution method to start an app with processArguments and environment variables. However, the Appium .NET Client does not offer a dedicated, user-friendly method to invoke this extension.

Problem

Developers using the .NET client must manually execute mobile: launchApp via driver.ExecuteScript(), which is less intuitive and requires additional boilerplate code.
Unlike the existing LaunchApp() and RestartApp() methods, there is no high-level method that directly supports passing processArguments and environment variables.

Proposed Solution

Introduce a new method in the .NET client, such as:

public void LaunchAppWithArguments(string bundleId, Dictionary<string, object> processArguments = null, Dictionary<string, string> environmentVariables = null)
This method should:

Internal call mobile: launchApp with the provided arguments.
It allows specifying processArguments and environment variables in a structured manner.
Ensure consistency with other Appium client implementations.

Benefits

Provides a clean, structured API for launching apps with specific configurations.
Reduces the need for raw script execution (driver.ExecuteScript()).
Aligns the .NET client with the Appium XCUITest driver’s intended usage.

Reference

Original discussion: #858

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant