Page MenuHomePhabricator

[EPIC] Port Minerva's browser tests to Selenium Node.js
Open, HighPublic

Description

Note: This task is large and it's not clear how to break it down. https://www.mediawiki.org/wiki/User_talk:Jdlrobson/Experiences_porting_Ruby_browser_tests_to_NodeJs provides a good summary of the problems we faced when trying to do this before. This is stalled on T177260 being completed first which is also a large task, but will help us achieve this one more quickly.

Background

In T160238 and T164024 we rewrite our other browser tests. MinervaNeue has a significant amount of browser tests so is likely to take much longer but hopefully we've had enough practice to do this.

Minerva has been setup so that you can run browser tests using check experimental
A patch has been begun in WIP Port Minerva's browser tests to Selenium

Acceptance criteria

  • Rewrite all tests into Node.js
  • Make the experimental job the default. Drop the old Ruby job.
  • While working on this, do an audit as originally proposed in T148973 of what we are testing. Remove unnecessary tests and document missing tests. At the end, summarise the browser test for each extension.

Related Objects

Event Timeline

There are a very large number of changes, so older changes are hidden. Show Older Changes

Change 373902 had a related patch set uploaded (by Zfilipin; owner: Zfilipin):
[mediawiki/skins/MinervaNeue@master] WIP Port Minerva's browser tests to Selenium

https://gerrit.wikimedia.org/r/373902

Change 373903 had a related patch set uploaded (by Zfilipin; owner: Zfilipin):
[mediawiki/core@master] Run Selenium tests for skins

https://gerrit.wikimedia.org/r/373903

Change 373904 had a related patch set uploaded (by Zfilipin; owner: Zfilipin):
[integration/config@master] Run mediawiki-core-qunit-selenium-jessie for MinervaNeue

https://gerrit.wikimedia.org/r/373904

Change 373904 merged by jenkins-bot:
[integration/config@master] Run mediawiki-core-qunit-selenium-jessie for MinervaNeue

https://gerrit.wikimedia.org/r/373904

zeljkofilipin removed zeljkofilipin as the assignee of this task.Aug 25 2017, 3:17 PM

Everything is set up. Let me know if you have any questions. I am available for reviews and pairing.

Change 373903 merged by jenkins-bot:
[mediawiki/core@master] Run Selenium tests for skins

https://gerrit.wikimedia.org/r/373903

Jdlrobson moved this task from Backlog to New adventures on the MinervaNeue board.Sep 5 2017, 8:57 PM
Jdlrobson moved this task from Needs Analysis to Triaged but Future on the Readers-Web-Backlog board.

Nothing to analyse here at the moment.

Jdlrobson updated the task description. (Show Details)Sep 7 2017, 2:24 PM
Jdlrobson updated the task description. (Show Details)Sep 7 2017, 3:25 PM
greg added a subscriber: greg.

Just removing our -kanban board, let us know if you need any help.

@zeljkofilipin is it possible to tag browser tests to only run on @integration / against beta cluster? We'll need this.

@Jdlrobson I was sure I have replied to this. :| Maybe there was a similar question somewhere else. Anyway, wdio has support for suites and Mocha has support for tags.

Probably won't get to this until December now.

Jdlrobson renamed this task from Port Minerva's browser tests to Selenium to Port Minerva's browser tests to Selenium Node.js.Nov 17 2017, 6:44 PM
Jdlrobson lowered the priority of this task from High to Normal.Feb 7 2018, 7:12 PM

Reflecting reality. Per https://www.mediawiki.org/wiki/User:Jdlrobson/Experiences_porting_Ruby_browser_tests_to_NodeJs (T181509) and the size of the browser test suite , we don't have the time to work on this right now.

Jdlrobson changed the task status from Open to Stalled.Feb 7 2018, 7:13 PM
Jdlrobson moved this task from Needs Analysis to Triaged but Future on the Readers-Web-Backlog board.
Jdlrobson updated the task description. (Show Details)
Jdlrobson updated the task description. (Show Details)
Jdlrobson changed the task status from Stalled to Open.Mar 26 2018, 4:43 PM
Jdlrobson raised the priority of this task from Normal to High.
Jdlrobson added a project: User-Jdlrobson.

Change 421960 had a related patch set uploaded (by Jdlrobson; owner: Jdlrobson):
[mediawiki/skins/MinervaNeue@master] QA: Remove test not adding value

https://gerrit.wikimedia.org/r/421960

Change 421961 had a related patch set uploaded (by Jdlrobson; owner: Jdlrobson):
[mediawiki/skins/MinervaNeue@master] QA: Speed up browser tests by not unnecessarily opting into beta

https://gerrit.wikimedia.org/r/421961

Change 421960 merged by jenkins-bot:
[mediawiki/skins/MinervaNeue@master] QA: Remove test not adding value

https://gerrit.wikimedia.org/r/421960

Jdlrobson renamed this task from Port Minerva's browser tests to Selenium Node.js to [EPIC] Port Minerva's browser tests to Selenium Node.js.Mar 27 2018, 4:49 PM
Jdlrobson added a project: Epic.

Changing title for epic until we can split up the work more appropriately

Change 421961 merged by jenkins-bot:
[mediawiki/skins/MinervaNeue@master] QA: Speed up browser tests by not unnecessarily opting into beta

https://gerrit.wikimedia.org/r/421961

Change 373902 abandoned by Zfilipin:
WIP Port Minerva's browser tests to Selenium

Reason:
Replaced with https://gerrit.wikimedia.org/r/#/c/423648/

https://gerrit.wikimedia.org/r/373902

Change 502355 had a related patch set uploaded (by Jdlrobson; owner: Jdlrobson):
[integration/config@master] Daily Minerva Selenium Node.js job

https://gerrit.wikimedia.org/r/502355

Change 502356 had a related patch set uploaded (by Jdlrobson; owner: Jdlrobson):
[integration/config@master] Run Node.js browser tests in MobileFrontend

https://gerrit.wikimedia.org/r/502356

Change 502355 merged by jenkins-bot:
[integration/config@master] Daily Minerva Selenium Node.js job

https://gerrit.wikimedia.org/r/502355

greg removed a subscriber: greg.Apr 11 2019, 9:24 PM