User:DWalden (WMF)/Test2wiki k8s migration/Search
Feature | Need testing? | What are the risks? | Does it have dependencies? | Existing regression or smoke testing strategy? | Does the regression/smoke testing strategy cover the dependencies? | Can it be tested on test2wiki? | Feasible to make it testable on test2wiki? |
---|---|---|---|---|---|---|---|
CirrusSearch[edit]
What possible risks are posed to this feature by the k8s migration?[edit]
Not clear
What are the dependencies?[edit]
job queues, systemd timers (aka cron jobs). It's not clear if those are moving to k8s as part of this, or if they will continue through the existing infrastructure until a later date.
Other mediawiki extensions:
- TimedMediaHandler
- PdfHandler
- SiteMatrix
- PoolCounter
- GeoData
- Interwiki
- WikimediaEvents
Also requires ability to make api requests from one wiki to another wiki.
Does it use any external services?[edit]
Elasticsearch
Is there any back-end processing?[edit]
Some through systemd timers that run daily. Lots of jobs. The remainder talks to elasticsearch directly and shouldn't be impacted.
Does it use external binaries?[edit]
Not directly. Depends on external binaries invoked during wikitext parsing through TimedMediaHandler, PdfHandler, maybe others.
Does it read or write files on the filesystem?[edit]
Not inside mediawiki.
Is there a regression or smoke testing strategy?[edit]
Sort-of, the @smoke tag of CirrusSearch tests/integration/ does very minimal checks, but it mostly amounts to "this thing isn't 100% broken" and typically fails due to UI changes made outside CirrusSearch. See selenium-daily-beta-CirrusSearch in jenkins.
At the least, we need to test autocompletion and run the two maintenance scripts on test2wiki (SaneitizeJobs.php and UpdateSuggesterIndex.php).
Does it cover the dependencies mentioned above?[edit]
No
Can it be tested on test2wiki?[edit]
Top level functionality can be tested. Most cross-wiki integration is likely hard to test.
Is it feasible to make it testable on test2wiki?[edit]
Not clear. test2wiki would need sister wikis (wiktionary, wikipedia, wikiquote, etc.)
<Feature>[edit]
What possible risks are posed to this feature by the k8s migration?[edit]
What are the dependencies?[edit]
Does it use any external services?[edit]
Is there any back-end processing?[edit]
Does it use external binaries?[edit]
Does it read or write files on the filesystem?[edit]
Is there a regression or smoke testing strategy?[edit]
Does it cover the dependencies mentioned above?[edit]
Can it be tested on test2wiki?[edit]
Is it feasible to make it testable on test2wiki?[edit]
What features do not need testing on test2wiki?[edit]
Definitions[edit]
- test2wiki
- https://test2.wikipedia.org/wiki/Main_Page. An environment hosted on production servers but with test data, so is appropriate for testing. The code it is running is updated every Tuesday.
- To find a list of extensions already installed on test2wiki, see https://test2.wikipedia.org/wiki/Special:Version.
- Need testing?
- Features may not need testing. For example, this might be because:
- it is not hosted on Production
- it is mainly a UI feature
- it is considered low-risk
- External services?
-
- Inside our ecosystem like database, APIs, Parsoid
- Outside our ecosystem like third-party APIs
- Back-end processing?
- Including DeferredUpdates, job queue. See How_to#Find_out_if_my_feature/extension_does_back-end_processing.
- External binaries?
- See How_to#Find_out_if_my_feature/extension_uses_external_binaries.
- Existing regression or smoke testing strategy?
- This could include:
- Selenium tests (see How_to#Find_pre-existing_Selenium_tests)
- API tests (see How_to#Find_pre-existing_API_tests).
- Documented test procedures
- Exploratory testing