WebDriver/Meetings/2018-07-02

From MozillaWiki
Jump to: navigation, search

Agenda

  • TPAC in Lyon
  • HTTP/1.1 Keep-Alive connections continuation
  • How do we publish release notes for WebDriver?
  • Handling of cyclic expando properties on HTML elements for execute (async) script (Bug 1447977) when returning a collection of elements:
    • works: execute_script("return document.getElementById('foo');")
    • fails: execute_script("return document.getElementsByTagName('bar');")
  • Making "Element Click" and wait for page load more configurable?
  • Location of unit tests for Rust code (eg. geckodriver)
    • With the Serde rewrite I add a lot of new unit tests which in some cases causes the source files to have more tests than real code.
    • Would it now be better to move those unit tests to a separate file?
    • This would also help a lot for re-compilation given that each modification of the test causes the source file to recompile, which is a bit of wasted time for me while working on the tests.

Minutes

TPAC

  • WebDriver meeting is on Thursday and Friday
  • ato/jgraham catching the train down, not decided hotel yet
  • Web Platform Tests discussions on Tuesday, but not compulsory
    • Encompasses everything WPT related and much more
  • Unconference style day on Wednesday
ato
I think it would be a good idea if whimboo would attend.
AutomatedTester
I agree.
I also want to do a team work week, but let’s discuss it in more detail next week.

HTTP/1.1 Keep-Alive connections continuation

AutomatedTester
Swapped out transport mechanism in Selenium.
There’s a bug in the stdlib in Python where the client ignores the close when the server sends it.
Selenium is now using urllib3.
Fixed all the tests and some tests seem to work faster.
ato
What’s the timeframe for the fix to be published?
AutomatedTester
Not a lot of people affected because it’s not turned on by default in the Python client.
ato
Any opinions on increasing the timeout for Keep-Alive?
This is by the way an entirely orthogonal issue to the Keep-Alive problems with the Python client.
AutomatedTester
The default for Selenium’s Java server is 30 seconds, but maybe we could do 60 seconds.
ato
Sounds fine to me.
whimboo
What does the situation look like for other Selenium clients?
ato
Only Python is affected because the Python 2 standard library is broken.
We have also only gotten bugs with the Selenium Python client.

WebDriver release notes

  • Also, what do we put in?
  • Also, when?
  • There is a flag ("relnote-firefox") or whiteboard entry for getting bugs added to the release notes.
ato
Two sets of release notes and ours would only appear on MDN, not on mozilla.org.
whimboo
Explanation in comment would be useful.
ato
We should add Marionette items that are important and users of geckodriver can face.
whimboo
Do you want to go over these regularly?
ato
The Bugzilla query whimboo had is the definite source: pick things out of this list, and add to MDN.
whimboo
Maybe we pick up the at most 10 items by priority?
ato
The change list is on a separate page on MDN so we can add what we need.

ACTION: ato will follow up on presentaiton of WebDriver release notes

Serialisation of cyclic expando properties on HTML elements

ato
I don’t know too much about this.
Sounds like you will want to only run assert.acyclic on array entries that are not elements.
Maybe assert.acyclic can be made element-aware?

ACTION: whimboo will check element.isCollection if we miss an entry and why there is the HTMLDivElement

Making WebDriver:ElementClick wait for page load configurable

AutomatedTester
Why are CSS animations blocking page load?
whimboo
CLick handler could delay page from unloading.
ato
This is about the 200 ms timeout before we stop listening?
whimboo
Yes.
ato
Isn’t the logical conclusion here that this should be defined in WebDriver?
Surely other implementations face the same problem?
AutomatedTester
The argument was that it’s only the test authors and the browser vendors who know what this number should be.
Because e.g. the document is doing something weird or mobile might be slower than desktop.
ato
Do we have any data? Is 200 ms too little?
whimboo
200 ms is OK for most use cases.
We will close the issues and explain why.

Location of Rust unit tests

whimboo
With the serde rewrite I add a lot of new unit tests which in some cases causes the source files to have more tests than real code.
Would it now be better to move those unit tests to a separate file?
This would also help a lot for re-compilation given that each modification of the test causes the source to recompile, which is a bit of wasted time for me while working on the tests.
ato
It should not affected compile time.
AutomatedTester
Ask in #rust channels if it helps to decrease compilation time.
ato
Some would argue it is a benefit to have the tests in the same file so you can easily grep.
whimboo
Maybe it’s just me who would like to see them separated and I have to get used to this.

Status updates

  • ato
    • Continued work on marionette-window-tracking
    • Intern mentoring took up some time
    • Various fixups to bugs mentioned last week, nothing new
    • Did meeting preparation work and announcements
    • Triaged requirements and did some investigation into enabling geckodriver on all platforms (precursor to releasing from TC)
  • Henrik
    • [geckodriver] Fixed the win32 builds on Travis-CI to stop manual build and upload situation (Bug 1472112)
    • [wdspec] The "New Session" tests have a special requirement for capabilities and the POST body, and as such should not use the global "new_session" fixture (Bug 1470533)
    • [wdspec] Refactored global "session" fixture to make use of capabilities marker, and to only restart the session if capabilities have been changed. This change also gets rid of the global "new_session" fixture to make session creation for specific capabilities much easier (Bug 1470530)
    • Fixed bugzilla component assignments in moz.build files under testing/
    • [wdspec] Update pytest to 3.6.2, and all its dependencies (Bug 1471629)

(Spoken status updates in bold.)

PTO/travel (🏖)

  • ato away half-day or full-day on Monday (will still make meeting)
  • Henrik - PTO from July 9th - 20th