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
Simplify local executions #115
Simplify local executions #115
Conversation
* Ripped out local hub/node concept * Introduced a local driver factory that produces concrete browser web driver implementations for local runs. * Removed support for htmlunit in local executions because it doesn’t extend RemoteWebDriver. * Introduced a new config parameter to obtain the command to start a local node. * Removed out the capability matcher from client because now we don’t need it any more. * Removed the Hub class that we had duplicated from selenium codebase.
My $0.02 I still believe that a locally started node and hub is a scenario we should try to support from SeLion client. I can't see a good reason to rip out this functionality and more importantly abandon this use case. I see some benefit in having an execution environment that is somewhat "closer" to the one provided to clients by the Grid. I also see this capability of driving a local browser as a good addition. I like the simplified setup provided here (using driver instances directly) as an addition instead of a replacement for the existing runlocally support. So I would prefer we make this an addition at some point instead of replacement for the existing runlocal support. |
I hear you.
Do you want to help me understand why ? If the functionalities were differing I would agree. But am sure you are also aware of the fact that the Grid/Node is just a relay setup that facilitates RMI calls into a remote JVM that runs in a different machine but under the hoods everything in Grid/Node falls back to still leveraging the actual browser implementations and doesn't do anything on their own. So what is the benefit of still clinging on to a locally started node and hub (which is a round about way of doing things) when it can be done directly .
What benefits are you talking about ? The execution environment that you refer to is not actually the execution environment per se but more on a RMI call facility that the Grid/Node gives you. The execution environment to me is ideally speaking the OS flavor + OS version + Browser flavor + Browser version.
This to me sounds way too redundant and there is no value add by us providing both of the options. |
@krmahadevan |
We should consider these options and suggestions after M5 and 1.0.0.. I don't want to rip out existing capabilities in M5 |
My suggestion is lets do this before releasing 1.0.0, so that we will not On Thu, Jul 9, 2015 at 11:43 AM, Doug Simmons notifications@github.com
|
We have a functioning, yet slightly inefficient, approach that works and has been working for us and our users (internally and externally) for a long time now.. We're not going to rip it out weeks before a release -- especially when there is already a list of things higher priority to complete beforehand. If 1.1.0 is nothing else but changing the way we launch web drivers locally, then that's perfectly acceptable. |
In my opinion this is not a big change set. And this PR and On Thu, Jul 9, 2015 at 12:36 PM, Doug Simmons notifications@github.com
|
FYI - I have started to incorporate this PR against the latest |
I am closing this Pull Request off, since I dont see any traction in my proposal. |
concrete browser web driver implementations for local
runs.
because it doesn’t extend RemoteWebDriver.
the command to start a local node.
because now we don’t need it any more.
selenium codebase.