--
You received this message because you are subscribed to the Google Groups "platform-predictability" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-predicta...@chromium.org.
To post to this group, send email to platform-pr...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-predictability/CAEmk%3DMZor7j7NSAd%2B%3DukrSnmw5peg6qpLcAoWGRtDUuHVVVbgA%40mail.gmail.com.
My main concern with not using WebDriver is that web developers also need to be able to test these APIs. Will we be providing special browser builds with the testing APIs enabled, so that they can write automated tests against their web apps simulating the presence and behavior of certain Bluetooth devices? That’s what WebDriver would give us (in addition to fitting in to the framework web developers are already using for automated testing of their sites).
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-predictability/CAARdPYf8t92uwby6gka%3D1o9t635vYN1fpk2hajpe_%2Bpx3kAgNQ%40mail.gmail.com.
My main concern with not using WebDriver is that web developers also need to be able to test these APIs. Will we be providing special browser builds with the testing APIs enabled, so that they can write automated tests against their web apps simulating the presence and behavior of certain Bluetooth devices? That’s what WebDriver would give us (in addition to fitting in to the framework web developers are already using for automated testing of their sites).
From: Philip Jägenstedt [mailto:foo...@chromium.org]
Sent: Friday, April 7, 2017 02:28
To: Reilly Grant <rei...@chromium.org>; Vincent Scheib <sch...@chromium.org>; platform-architecture-dev <platform-arc...@chromium.org>; platform-pr...@chromium.org; Giovanni Ortuño <ort...@chromium.org>; Matt Giuca <mgi...@chromium.org>; Mike Pennisi <mi...@bocoup.com>; James Graham <ja...@hoppipolla.co.uk>
Subject: Re: Chromium Architecture for exposing web-platform testing APIs
Thanks for pushing on this, Vincent,
It should be clear from public-test-infra that I am optimistic about in-browser testing APIs, and uncertain about depending on WebDriver, at least for the big APIs like Bluetooth and USB. I would love pushback from Chromium folks that disagree. However, even if we all agree within Chromium, we get the value of shared tests only if they are also automated in some other engine.
So, I believe the main thing we can do to move forward is to collaborate with other vendors on the testing needs of specific APIs, to see if we are aligned on preferred solutions. From Giovanni's list, are there any that seem like extra good candidates, that are currently being implemented in other engines?
I would be particularly interested to hear if there are any APIs with fairly modest testing needs, where the API surface if implemented in WebDriver would only amount to a new command or two. Although I'd love a simple recommendation for all new APIs, it might not be a one-size-fits all, so I would like to go through the exercise to see what an hypothetical (small) WebDriver extension would look like. Any candidates?
+pfeldman who in the past argued against using WebDriver for the Bluetooth Test API.Thanks for your replies Domenic and Philip.On Fri, Apr 7, 2017 at 1:31 PM Domenic Denicola <d...@domenic.me> wrote:My main concern with not using WebDriver is that web developers also need to be able to test these APIs. Will we be providing special browser builds with the testing APIs enabled, so that they can write automated tests against their web apps simulating the presence and behavior of certain Bluetooth devices? That’s what WebDriver would give us (in addition to fitting in to the framework web developers are already using for automated testing of their sites).
The proposal for exposing web-platform testing APIs rather than doing it through Web Driver does not rule out the possibility of exposing them to developers interested in using them.The test APIs we currently use in our LayoutTests are implemented by overriding Mojo Interfaces and Services from Javascript. Currently this can only be done when running Layout Tests but there are no significant technical obstacles that would prevent us from exposing this capability behind a flag. Of course such a thing would have to go through security review.Besides the small benefit of having many tests written this way already, this approach results in no binary size increase since all the code that implements these Test APIs can be loaded together with the tests. I'm currently looking at how Bluetooth's test API would be implemented using Web Driver to estimate the binary size impact but my guess is that it will be just as expensive as a C++ Mojo Interface: 100KB.From: Philip Jägenstedt [mailto:foo...@chromium.org]
Sent: Friday, April 7, 2017 02:28
To: Reilly Grant <rei...@chromium.org>; Vincent Scheib <sch...@chromium.org>; platform-architecture-dev <platform-arc...@chromium.org>; platform-pr...@chromium.org; Giovanni Ortuño <ort...@chromium.org>; Matt Giuca <mgi...@chromium.org>; Mike Pennisi <mi...@bocoup.com>; James Graham <ja...@hoppipolla.co.uk>
Subject: Re: Chromium Architecture for exposing web-platform testing APIs
Thanks for pushing on this, Vincent,
It should be clear from public-test-infra that I am optimistic about in-browser testing APIs, and uncertain about depending on WebDriver, at least for the big APIs like Bluetooth and USB. I would love pushback from Chromium folks that disagree. However, even if we all agree within Chromium, we get the value of shared tests only if they are also automated in some other engine.
So, I believe the main thing we can do to move forward is to collaborate with other vendors on the testing needs of specific APIs, to see if we are aligned on preferred solutions. From Giovanni's list, are there any that seem like extra good candidates, that are currently being implemented in other engines?
I would be particularly interested to hear if there are any APIs with fairly modest testing needs, where the API surface if implemented in WebDriver would only amount to a new command or two. Although I'd love a simple recommendation for all new APIs, it might not be a one-size-fits all, so I would like to go through the exercise to see what an hypothetical (small) WebDriver extension would look like. Any candidates?
Two APIs come to mind: Geolocation and WebShare. Geolocation's test API should be very simple but the API requires a permission. WebShare is somewhat new; it would also have a simple Test API and doesn't require permission.
You received this message because you are subscribed to the Google Groups "platform-architecture-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to platform-architect...@chromium.org.
To post to this group, send email to platform-arc...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/platform-architecture-dev/CAMDKGBVQeUcJxw_kVbyjxeJeYFoCTNDJBPMuRVBLp9Rq9ssvAA%40mail.gmail.com.
On Fri, 7 Apr 2017 at 14:34 Giovanni Ortuño <ort...@chromium.org> wrote:I would be particularly interested to hear if there are any APIs with fairly modest testing needs, where the API surface if implemented in WebDriver would only amount to a new command or two. Although I'd love a simple recommendation for all new APIs, it might not be a one-size-fits all, so I would like to go through the exercise to see what an hypothetical (small) WebDriver extension would look like. Any candidates?
Two APIs come to mind: Geolocation and WebShare. Geolocation's test API should be very simple but the API requires a permission. WebShare is somewhat new; it would also have a simple Test API and doesn't require permission.I'm the TL for Web Share. I would be happy to help change our tests over to this format. Our surface is very small and it fits the bill for this feature (requires user gesture and shows UI which needs to be mocked by the test harness). My only concern is that Web Share isn't standardized and only exists in Chrome, so it isn't a good test case for cross-browser test harnessing.