User:DWalden (WMF)/Edit Recovery
Possible testing sessions[edit]
Survey cross-browser compatibility[edit]
- Test the basic capability of an array of browsers
- Do all browsers implement indexeddb in the same way?
Page sections and conflicts[edit]
- Page sections are identified by a numeric ID e.g. https://www.mediawiki.org/w/index.php?title=User:DWalden_(WMF)/Edit_Recovery&action=edit§ion=1
- These numeric IDs can be changed by rearranging sections on a page or adding new sections. What if this happens between a user editing a section and recovering the edit at a later date?
Content types[edit]
- Do different page content types (wikitext, JSON, CSS, etc.) make a difference?
- E.g. try editing your User:DWalden_(WMF)/common.js
Unintended logouts[edit]
- What forms of session exiting and expiring will clear the edit recovery data?
- For example, clearing cookies, cookie expiry
Compatibility with other features[edit]
- What features, gadgets, extensions will this not play nicely with?
Dynamic forms[edit]
- Some wikis and extensions have different editing forms, do they work with edit recovery.
- Examples of these include wikisource (pages in the Index and Page namespaces).
- What about the Extension:Page_Forms extension?
Test ideas[edit]
- Upgrading browser? Migrating profiles?
- Review unit coverage
- Sections
- Multiple pages
- Cross browser and device
- Types of edit?
- Are edits restored accurately?
- Unintended logouts (e.g. session timeout)
- Does session expiry clear the data?
- Corruption detection?
- How clearly is it communicated to users? (esp. with conflicts)
- Frequency
- It appears to be 5 seconds after stop typing. Too long?
- Compatibility
- Other extensions, gadgets, RTP, etc.
- Syntax highlighting
- Different content types
- What URL params might interfere?
- What config variables might interfere?
- What if a property is missing from the indexeddb object (e.g. minor edit)
- Disaster recovery
- ACID properties
- Relaxed vs. strict durability ("How long does it take for a relaxed transaction to be written to non-volatile storage?")
- Timing
- Crash just as new data being stored
- Dynamic forms (e.g. page forms extension, proofread page)?
- Negative testing
- No space left on device
- Make the indexeddb sqlite database read-only
- Cleared appropriately
- What about unsuccessful saves?
- Deliberately logging out does not clear
- Different parent revisions
- i18n
- Stress