Selenium Mobile JSON Wire Protocol Specification

(github.com)

32 points | by based2 2139 days ago

2 comments

  • maxharris 2139 days ago
    Meh, headless Chrome killed any need for me to ever touch this Selenium thing again. It is awesome to not have to install Java to get work done...
    • hugs 2139 days ago
      You don't have to install Java to use Selenium. (Source: I started the Selenium project)
      • anonnel 2139 days ago
        Isn’t Selenium server (JAVA) required?

        Or is there a way to run Se without the server?

        • hugs 2139 days ago
          The server is a proxy between a client library and a browser (or a browser driver like ChromeDriver). Like all good proxies, it can add some cool features to your workflow, but is not required for basic usage.

          For example, you can download the Selenium client library for Python and drive Chome (via the ChromeDriver executable provided by Google). No Java required.

          Removing the Java requirement for basic point-to-point (e.g. Python to Firefox, Ruby to Chrome, etc.) automation was a key feature of the Selenium 2 (aka WebDriver) architecture when Simon Stewart first released it back in 2011.

        • papercrane 2139 days ago
          Selenium Server is only need if you want to run a remote Selenium WebDriver. If you want to drive a local browser you can just use the language bindings you wish.
    • enitihas 2139 days ago
      Headless chrome and selenium are two orthogonal things I think. Selenium offers an API to control browsers. It can be chrome, headless chrome, remote chrome, firfox or any browser supporting the web driver protocol. Headless chrome is just an efficient way to run chrome for tests. I think you might have meant Puppeteer.
    • dcherman 2139 days ago
      So do you not have automated tests that run cross browser? If so, what's your method for doing so?
      • maxharris 2138 days ago
        The other browsers have such low market share that it just doesn't make economic sense to bother with that. I don't like this state of affairs, but that's currently the way it is!

        Also, one (small? large?) reason Firefox has lost so much market share is that Mozilla just isn't being practical. For example, here's an obvious feature they should be implementing, but refuse to do because of their whole stance on hiding behind web standards:

        https://stackoverflow.com/questions/47866708/css-is-there-an... https://stackoverflow.com/questions/37493597/overlay-scrollb...

        This works just fine in Chrome, Safari and Edge. The bottom line? No way to justify spending even more time trying to support a browser that almost none of my users actually use...

        Again, I'm not trying to be a stick in the mud against a multi-browser world here. But we don't live in a world of infinite resources, and some things just don't make the cut sometimes.

    • domakidis 2139 days ago
      Chrome doesn't support extensions in headless mode though, unlike Firefox that does.

      A Seleniun installation with the Google Chrome Driver is still required for anyone who would want that.

  • colanderman 2139 days ago
    For those as confused by the title as I was, apparently this is a wire protocol for something called "Selenium" which happens to use JSON. "Selenium Mobile REST API" would be much more descriptive without context.
    • kodablah 2139 days ago
      Also a repo that that changed in over a year. I am curious if there is anything new of note.
    • codedokode 2139 days ago
      I was confused too and didn't understand why mobile devices need another type of JSON.
    • sctb 2139 days ago
      Thank you! We've added “Selenium”.