Wikimedia Apps/Team/iOS/Testing processes

User testing builds for design review testing
During our release cycle, we sometimes test an incomplete feature with users at UserTesting.com, so that we can determine any UI issues early and react to their feedback. This build is created like any other build during our typical deploy process. We deploy a build from our build server to main Wikipedia app in App Store Connect (white icon). We can use the latest automatic nightly build, or kick one off manually through Jenkins via the Deploy job, where we can specify a particular branch to use if necessary.

Once the build is uploaded, navigate to the Wikipedia App in App Store Connect, click the TestFlight tab, then click the "UserTesting.com" External Testing user group. At the bottom you should add your new build via the "+" icon in the builds section. You can copy and send the Public Link on this page to designers for testing.

History note: Before they supported testing through TestFlight, we had to export an .ipa binary to upload at UserTesting.com. That should no longer be necessary.

Beta builds and beta release testing
[update here]

Product testing and rules for on-wiki editing
The iOS team utilizes Test Wiki for on-wiki editing, including testing of editing, notifications and talk pages. Through the app, Test Wiki is accessible by adding 'Test' as a Wikipedia language. Test Wiki is used internally by the team and also for usability tests (both with new contributors recruited through UserTesting.com and for testing with movement members). Clearly labeled test accounts are utilized by testers on UserTesting.com.

Occasionally a 'test' article or talk page will need to be created to simulate an on-Wiki experience for testing. If a 'test' article or talk page is created, the Phabractor ticket associated with the feature being tested will be linked to via a comment at the top of the article (viewable in source mode), along with any other associated information. Upon the completion of testing any articles or talk pages that were used for testing will be deleted. Test user accounts will not be deleted, so that they can be reused in the future.

Movement members who utilize beta builds may test new features within their capacity as volunteer editors using their personal accounts (eg. if the beta build enables logged in users to contribute to the app in a new way, beta testers are encouraged to try these new features).

Maintaining test groups in TestFlight
[update here]