Page MenuHomePhabricator

Simplify Wikifunctions e2e test cases
Closed, ResolvedPublic

Description

Currently the e2e tests are (a) tightly coupled to Codex implementation and (b) written similar to unit tests (i.e. testing edge cases), we'd like to simplify and make the tests more robust by defining a "happy path" to test and leveraging simpler selectors for codex components.

Happy path:

  1. Create a function
  2. Add an code implementation
  3. Add a tester
  4. Add a composition implementation
  5. Run the function
  6. Enable the function

  • basic.js
  • function.js
  • tester.js
  • implementation.js
  • connect.js
  • type.js — Probably just delete these, not reasonably tested.

Details

SubjectRepoBranchLines +/-
mediawiki/extensions/WikiLambdamaster+73 -349
mediawiki/extensions/WikiLambdamaster+26 -44
mediawiki/extensions/WikiLambdamaster+5 -2
mediawiki/extensions/WikiLambdamaster+19 -22
mediawiki/extensions/WikiLambdamaster+12 -10
mediawiki/extensions/WikiLambdamaster+0 -762
mediawiki/extensions/WikiLambdamaster+11 -7
mediawiki/extensions/WikiLambdamaster+176 -308
mediawiki/extensions/WikiLambdamaster+2 -2
mediawiki/extensions/WikiLambdamaster+38 -7
mediawiki/extensions/WikiLambdamaster+14 -16
mediawiki/extensions/WikiLambdamaster+24 -52
mediawiki/extensions/WikiLambdamaster+1 -1
mediawiki/extensions/WikiLambdamaster+26 -18
mediawiki/extensions/WikiLambdamaster+82 -182
mediawiki/extensions/WikiLambdamaster+8 -6
mediawiki/extensions/WikiLambdamaster+1 -1
mediawiki/extensions/WikiLambdamaster+13 -4
mediawiki/extensions/WikiLambdamaster+29 -54
mediawiki/extensions/WikiLambdamaster+1 -1
Show related patches Customize query in gerrit

Event Timeline

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

Why did this task get created in a legacy todo column? Should it go through the team's regular triage process? Sorry if I missed something!

Sorry, that was my bad. I wasn't aware that was a legacy column. I'll move it to triage. FWIW this will primarily be worked on by Vaughn with assistance from Zeljko and I.

Jdforrester-WMF moved this task from To triage to Backlog on the Abstract Wikipedia team board.

Change 989464 had a related patch set uploaded (by Zfilipin; author: Zfilipin):

[mediawiki/extensions/WikiLambda@master] e2e: Run only installation checks in the daily Jenkins job

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

Change 989464 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] e2e: Run only installation checks in the daily Jenkins job

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

Jdforrester-WMF changed the task status from Open to In Progress.Jan 11 2024, 9:05 PM
Jdforrester-WMF assigned this task to vaughnwalters.
Jdforrester-WMF moved this task from Backlog to In Progress on the Abstract Wikipedia team board.

I thought this didn't help, but looks like there were two passing test runs (in a row!). That didn't happen for at least the last 30 days, if not longer.

Screenshot 2024-01-12 at 11.08.44.png (214×504 px, 27 KB)

I still don't know why a lot of the time the job times out after 60 minutes (for example today), but at least there's some progress.

Change #1015458 had a related patch set uploaded (by Vaughn Walters; author: Vaughn Walters):

[mediawiki/extensions/WikiLambda@master] Bug: T349836

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

Change #1015458 had a related patch set uploaded (by Vaughn Walters; author: Vaughn Walters):

[mediawiki/extensions/WikiLambda@master] selenium: Adding some test IDs and fixing local broken tests for function.js

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

Change #1015464 had a related patch set uploaded (by Vaughn Walters; author: Vaughn Walters):

[mediawiki/extensions/WikiLambda@master] Bug: T349836

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

Change #1015464 abandoned by Vaughn Walters:

[mediawiki/extensions/WikiLambda@master] Bug: T349836

Reason:

duplicate

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

Change #1015458 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] selenium: Adding some test IDs and fixing local broken tests for function.js

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

Change #1017083 had a related patch set uploaded (by Vaughn Walters; author: Vaughn Walters):

[mediawiki/extensions/WikiLambda@master] selenium: Adding localization strings for more dynamic testing

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

Change #1017083 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] selenium: Adding localization strings for more dynamic testing

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

Change #1017085 had a related patch set uploaded (by Vaughn Walters; author: Vaughn Walters):

[mediawiki/extensions/WikiLambda@master] selenium: Adding function.js back into selenium-test

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

Change #1017085 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] selenium: Adding function.js into selenium-daily

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

Change #1025909 had a related patch set uploaded (by Vaughn Walters; author: Vaughn Walters):

[mediawiki/extensions/WikiLambda@master] selenium: Updating README and updating to dynamic selector

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

Change #1025909 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] selenium: Updating README and updating to dynamic selector

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

Change #1028933 had a related patch set uploaded (by Vaughn Walters; author: Vaughn Walters):

[mediawiki/extensions/WikiLambda@master] selenium: Fixing and refactoring tester.js

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

Change #1028933 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] selenium: Fixing and refactoring tester.js

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

Change #1030562 had a related patch set uploaded (by Vaughn Walters; author: Vaughn Walters):

[mediawiki/extensions/WikiLambda@master] selenium: Adding tester.js back into selenium daily tests

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

Change #1031586 had a related patch set uploaded (by Vaughn Walters; author: Vaughn Walters):

[mediawiki/extensions/WikiLambda@master] selenium: Adding data-testid selectors into tester.js

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

Change #1030562 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] selenium: Adding tester.js back into selenium daily tests

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

Change #1031586 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] selenium: Adding data-testid selectors into tester.js

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

Change #1031597 had a related patch set uploaded (by Vaughn Walters; author: Vaughn Walters):

[mediawiki/extensions/WikiLambda@master] selenium: Adding data-testid selectors into tester.js related files

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

Change #1032739 had a related patch set uploaded (by Vaughn Walters; author: Vaughn Walters):

[mediawiki/extensions/WikiLambda@master] selenium: Editing tester.js related files to pass in DUCT

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

Change #1031597 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] selenium: Adding data-testid selectors into tester.js related files

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

Change #1039586 had a related patch set uploaded (by Vaughn Walters; author: Vaughn Walters):

[mediawiki/extensions/WikiLambda@master] selenium: Changing xpath selector and clearing cookies

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

Change #1039586 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] selenium: Changing xpath selector and clearing cookies

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

Change #1032739 abandoned by Vaughn Walters:

[mediawiki/extensions/WikiLambda@master] WIP selenium: Editing tester.js related files to pass in DUCT

Reason:

Done with testing this for now

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

Change #1041199 had a related patch set uploaded (by Vaughn Walters; author: Vaughn Walters):

[mediawiki/extensions/WikiLambda@master] selenium: Fixing implementation.js and related files

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

Change #1042059 had a related patch set uploaded (by Vaughn Walters; author: Vaughn Walters):

[mediawiki/extensions/WikiLambda@master] selenium: Changing xpath selector in function.js

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

Change #1042059 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] selenium: Changing xpath selector in function.js

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

Change #1041199 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] selenium: Fixing implementation.js and related files

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

Change #1042380 had a related patch set uploaded (by Vaughn Walters; author: Vaughn Walters):

[mediawiki/extensions/WikiLambda@master] selenium: Adding implementation.js into selenium-daily

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

Change #1042380 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] selenium: Adding implementation.js into selenium-daily

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

Change #1043191 had a related patch set uploaded (by Vaughn Walters; author: Vaughn Walters):

[mediawiki/extensions/WikiLambda@master] selenium: Removing type.js from selenium test suite

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

Change #1043235 had a related patch set uploaded (by Vaughn Walters; author: Vaughn Walters):

[mediawiki/extensions/WikiLambda@master] selenium: Adding additional fixes for implementation.js

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

Change #1043191 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] selenium: Removing type.js from selenium test suite

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

Change #1043235 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] selenium: Adding additional fixes for implementation.js

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

Change #1043902 had a related patch set uploaded (by Vaughn Walters; author: Vaughn Walters):

[mediawiki/extensions/WikiLambda@master] selenium: Adding data-test id selectors

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

Change #1043902 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] selenium: Adding data-testid selectors for e2e testing

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

Change #1046759 had a related patch set uploaded (by Vaughn Walters; author: Vaughn Walters):

[mediawiki/extensions/WikiLambda@master] selenium: Fix for boolean dropdown selector

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

Change #1046759 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] selenium: Fix for boolean dropdown selector

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

Change #1049589 had a related patch set uploaded (by Vaughn Walters; author: Vaughn Walters):

[mediawiki/extensions/WikiLambda@master] selenium: Fixing broken and flaky tests in connect.js

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

Change #1051825 had a related patch set uploaded (by Vaughn Walters; author: Vaughn Walters):

[mediawiki/extensions/WikiLambda@master] WIP selenium: Adding dynamic waits for checkbox and button states

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

Change #1051825 abandoned by Vaughn Walters:

[mediawiki/extensions/WikiLambda@master] WIP selenium: Adding dynamic waits for checkbox and button states

Reason:

including this code in another patch

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

Change #1049589 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] selenium: Fixing broken and flaky tests in connect.js

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