appium / java-client

Java language binding for writing Appium Tests, conforms to W3C WebDriver Protocol
Apache License 2.0
1.2k stars 753 forks source link

[Feat]: implement Chromium driver and options #1995

Closed AlessandroMiccoli closed 11 months ago

AlessandroMiccoli commented 1 year ago

The implementation for the Chromium driver, including the options, needs to be included.

Are you interested to have it?

So, we could have the implementation directly from the library without making a custom into the project.

mykola-mokhnach commented 1 year ago

Sure, feel free to prepare a PR describing the necessary option classes

AlessandroMiccoli commented 12 months ago

I started working on it, seeing multiple options: appium and goog. I have a few questions that could save me some time:

  1. Appium options: in some cases, they have a default value. Do I need to consider it? My answer is no because if I decide to implement the option, in some ways, I am not happy with the default value.
  2. Goog options:
    • in some cases, have a dictionary type. Is it a Map<String,Object>?
    • perfLoggingPrefs capability has a set of defined optional keys. Do I need to throw an exception if the key provided is not on the list?
AlessandroMiccoli commented 12 months ago

@mykola-mokhnach I created a pull request for this https://github.com/appium/java-client/pull/2003. I am waiting for the above points, to continue to work on it.

mykola-mokhnach commented 12 months ago

I started working on it, seeing multiple options: appium and goog. I have a few questions that could save me some time:

  1. Appium options: in some cases, they have a default value. Do I need to consider it? My answer is no because if I decide to implement the option, in some ways, I am not happy with the default value.

Let the server to decide. IMHO any logic on the client side would be an unnecessary overhead

  1. Goog options:
    • in some cases, have a dictionary type. Is it a Map<String,Object>?

Yes, dictionary and map are the same thing

  • perfLoggingPrefs capability has a set of defined optional keys. Do I need to throw an exception if the key provided is not on the list?

Same as above, let the server to decide