A common problem when developing UI tests for iOS (and tests in general) is controlling the state before running each test. Having a well known and fixed environment to run tests is paramount.
If a test fails sporadically due to an external event such as side-effects from other tests or networking …