Selenium/Reference/Example Code

Legend:
 * ✅ Good. Simple specs and page objects.
 * ⚠️ Warning. Advanced. Not recommended for beginners.
 * 🤷 Only sample code.
 * 🥒 Using Cucumber testing framework instead of the default Mocha.
 * 😱 Not using page object pattern.
 * ❓ Not reviewed yet.

Examples:
 * mediawiki/core
 * tests/selenium ✅ (Canonical examples.)
 * tests/selenium/wdio-mediawiki ⚠️ (Source for wdio-mediawiki NPM package.)
 * mediawiki/extensions/AbuseFilter ✅
 * mediawiki/extensions/AdvancedSearch ⚠️
 * mediawiki/extensions/CentralNotice ✅
 * mediawiki/extensions/CirrusSearch:
 * tests/integration 🥒
 * tests/selenium ✅
 * mediawiki/extensions/Cite ✅
 * mediawiki/extensions/CodeMirror ⚠️
 * mediawiki/extensions/Echo ✅
 * mediawiki/extensions/ElectronPdfService ✅
 * mediawiki/extensions/EntitySchema ✅
 * mediawiki/extensions/FileImporter ✅
 * mediawiki/extensions/GlobalWatchlist 🤷
 * mediawiki/extensions/GrowthExperiments ✅
 * mediawiki/extensions/Math ✅
 * mediawiki/extensions/MobileFrontend ⚠️
 * tests/selenium/features 🥒
 * tests/selenium/specs ⚠️ 😱
 * mediawiki/extensions/Newsletter ✅
 * mediawiki/extensions/Popups ⚠️
 * mediawiki/extensions/ProofreadPage ✅
 * mediawiki/extensions/RelatedArticles ⚠️
 * mediawiki/extensions/RevisionSlider ⚠️
 * mediawiki/extensions/TemplateWizard 😱
 * mediawiki/extensions/TwoColConflict ⚠️
 * mediawiki/extensions/VisualEditor ✅
 * mediawiki/extensions/Wikibase ⚠️
 * repo/tests/selenium
 * client/data-bridge/tests/selenium
 * mediawiki/extensions/WikibaseLexeme ⚠️
 * mediawiki/extensions/WikiLambda ✅
 * mediawiki/skins/MinervaNeue ⚠️
 * tests/selenium/features 🥒
 * tests/selenium/specs 😱
 * phabricator/deployment ✅
 * wikibase/termbox ⚠️
 * wikidata/query/gui 😱
 * wikimedia/portals/deploy 😱
 * wdio-wikibase ⚠️

Example code was last reviewed in September 2019.

More information

 * P16201
 * P14670