Mesmo os melhores desenvolvedores não escrevem código perfeito — pelo menos não na primeira tentativa. Uma vez que você tenha concluído o desenvolvimento do seu aplicativo iOS, você precisará testá-lo. Felizmente, você não precisará testar dispositivos móveis de vários fabricantes, como faria ao desenvolver para Android. O iOS é o sistema operacional móvel proprietário da Apple, que opera apenas em iPhones da Apple. Embora você possa querer testar seu aplicativo iOS em várias gerações de iPhones (com sistemas operacionais múltiplos), ainda há menos dispositivos para testar do que com Android.
Sua primeira linha de teste está no próprio Xcode. Além dos testes unitários padrão aos quais você está acostumado, o Xcode possui testes automatizados de IU. Você pode escrever testes que navegam pela sua interface do usuário, interagindo com seu aplicativo como um usuário faria para localizar quaisquer problemas. O teste de IU não usa APIs para interagir com seu código — ele simula a interação de um usuário real com seu aplicativo. Contanto que você escreva testes que cubram todos os aspectos do seu aplicativo, você pode obter automaticamente um teste de IU que é frequentemente mais completo do que o que qualquer humano poderia realizar.
No entanto, a menos que seus testes contabilizem todas as possíveis interações que um usuário poderia ter com seu aplicativo, você ainda vai querer que humanos testem seu software em versão beta. Embora você possa instalar aplicativos lateralmente em dispositivos iOS sem submetê-los à App Store, a Apple facilita para amigos, familiares ou sua base de usuários visualizar seu aplicativo com seu aplicativo TestFlight. O TestFlight permite que membros do Programa de Desenvolvedores da Apple façam testes internos com até 25 membros da equipe em até 30 dispositivos cada. Você pode dar à sua equipe de desenvolvimento de aplicativos iOS a chance de testar seu aplicativo em um grupo pequeno e se preparar para a revisão Beta da Apple para que você possa liberar seu novo aplicativo iOS para testadores externos.
Uma vez que a Apple aprove seu aplicativo sob suas diretrizes de revisão da App Store, você pode convidar até 10.000 usuários para fazer download de uma versão de teste. Esses usuários fazem download do aplicativo TestFlight e usam um link único para acessar seu aplicativo. Você pode dividir seus testadores externos em grupos personalizados e enviar compilações específicas para cada grupo, permitindo que você realize testes A/B e compare respostas a recursos. Em troca, você obtém automaticamente dados sobre o uso e os usuários podem facilmente enviar feedback sobre quaisquer problemas que encontrarem.