Page MenuHomePhabricator

Rewrite QuickSurveys browser tests in Node.js
Open, LowPublic

Description

While working on T160238, I propose we split into groups for maximum effectiveness.
This task deals with the QuickSurveys extension.

  • Feature: Survey bucketing (opting in)
    • Scenario: Internal survey is visible when bucketed # tests/browser/features/bucketing.feature:14
    • Scenario: External survey is visible when bucketed # tests/browser/features/bucketing.feature:22
  • Feature: External surveys
    • Scenario: External survey is visible with flag #
    • Scenario: External survey is not present without flag when not bucketed
    • Scenario: External survey is not present when dismissed # tests/browser/features/external_survey.feature:21
    • Scenario: User can participate in external survey # tests/browser/features/external_survey.feature:27
  • Feature: Integration
    • Scenario: Survey is visible with quicksurvey=true flag # tests/browser/features/integration.feature:6
  • Feature: Internal surveys
    • Scenario: Internal survey has multiple answers #
    • Scenario: Internal survey is visible with flag #
    • Scenario: Internal survey is not present without flag
    • Scenario: Internal survey is not present when dismissed # tests/browser/features/internal_survey.feature:24
    • Scenario: User can participate in internal survey # tests/browser/features/internal_survey.feature:30

Notes

  1. The mw-wdio-nodepool builder replaces the mwext-ruby-jessie builder in integration-config/zuul/layout.yaml, which will make check experimental run the new WebdriverIO-based tests.
  2. Put your new tests in the tests/selenium/, following the example structure in RelatedArticles.

Developer notes

๐Ÿ 443111 (mediawiki/extensions/QuickSurveys): WIP The first sample Selenium test in Node.js

There are 4 files that need porting

  • bucketing.feature
  • external_survey.feature
  • integration.feature
  • internal_survey.feature

We'll probably want to follow the approach we've considered for Minerva and take the following steps

  • Port integration.feature (1 test) to Selenium and setup Ruby&Node.js browser tests side-by-side (T190710)
  • Port external_survey.feature
  • Port internal_survey.feature
  • Port bucketing.feature

Details

Related Gerrit Patches:
integration/config : masterjjb: rm selenium-MinervaNeue and selenium-QuickSurveys
mediawiki/extensions/QuickSurveys : masterWIP The first sample Selenium test in Node.js

Event Timeline

phuedx updated the task description. (Show Details)Oct 3 2017, 1:40 PM
phuedx updated the task description. (Show Details)Oct 3 2017, 1:45 PM
Jdlrobson renamed this task from [subtask] Rewrite QuickSurveys browser tests in Node.js to [subtask] Rewrite QuickSurveys browser tests in Node.js or remove them.Oct 4 2017, 5:10 PM
Jdlrobson lowered the priority of this task from High to Medium.Oct 4 2017, 5:21 PM
Jdlrobson moved this task from Upcoming to Tracking on the Readers-Web-Backlog board.
phuedx renamed this task from [subtask] Rewrite QuickSurveys browser tests in Node.js or remove them to Rewrite QuickSurveys browser tests in Node.js or remove them.Nov 28 2017, 2:33 PM
zeljkofilipin lowered the priority of this task from Medium to Low.Jun 29 2018, 4:29 PM

Change 443111 had a related patch set uploaded (by Zfilipin; owner: Zfilipin):
[mediawiki/extensions/QuickSurveys@master] WIP The first sample Selenium test in Node.js

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

zeljkofilipin removed zeljkofilipin as the assignee of this task.Jun 29 2018, 4:41 PM
zeljkofilipin updated the task description. (Show Details)

Change 443111 abandoned by Zfilipin:
WIP The first sample Selenium test in Node.js

Reason:
No activity in months.

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

Jdlrobson renamed this task from Rewrite QuickSurveys browser tests in Node.js or remove them to Rewrite QuickSurveys browser tests in Node.js.Oct 16 2018, 9:37 PM
Jdlrobson raised the priority of this task from Low to Medium.
Jdlrobson updated the task description. (Show Details)Oct 16 2018, 9:44 PM

Many of the browser tests seem to repeat one another. I'm not sure if it makes sense to port all of them, but we can work that out as we take on this work.

Jdlrobson lowered the priority of this task from Medium to Low.Nov 15 2018, 6:53 PM
Jdlrobson moved this task from Backlog to Bugs on the QuickSurveys board.Jan 15 2019, 5:56 PM

Change 556252 had a related patch set uploaded (by Hashar; owner: Jforrester):
[integration/config@master] jjb: rm selenium-MinervaNeue and selenium-QuickSurveys

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

Restricted Application added a subscriber: Masumrezarock100. ยท View Herald TranscriptThu, Dec 12, 2:00 PM

Change 556252 merged by jenkins-bot:
[integration/config@master] jjb: rm selenium-MinervaNeue and selenium-QuickSurveys

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