¿Cómo prueban Apple, Microsoft y HTC sus aplicaciones móviles? ¿Cómo automatizan este proceso?

No estoy seguro de lo que quieres decir con “sus aplicaciones móviles”, pero aquí hay una respuesta más general.

Cuando alguien crea una aplicación (que podría ser usted con NotePad ++ o Apple con XCode, o Microsoft con Visual Studio), su proceso de desarrollo completo es generalmente el mismo.

1) Defina su producto, qué quiere que haga, para quién, etc.
2) Haga planes y modelos para crear los conceptos básicos de su aplicación
3) Codifique su aplicación siguiendo sus planes y modelos. Cada vez que agrega una nueva funcionalidad a su aplicación, PRUEBA EL RESULTADO.
Por prueba me refiero a abrir su aplicación y usar su funcionalidad, pero también podría ser una prueba unitaria (hacer que otra aplicación use para usted cada funcionalidad de su primera aplicación).
4) Entregue la aplicación terminada a varias personas para que la prueben en general: Agregar una nueva funcionalidad funcional (oh sí) podría haber creado un error en otra.
5) Entregue la aplicación depurada a todos y ore por haber eliminado las mayores debilidades de su aplicación.
6) Siga a los usuarios de su aplicación para recibir una retroalimentación y eliminar los últimos errores. Si no hay más, buen trabajo, solo espera a que la próxima actualización de tu aplicación comience de nuevo 😉

Estos pasos se pueden adaptar para cada empresa que cree la aplicación, los objetivos, el público, etc.
Apple, porque quieren mantener sus productos en secreto, dan (dieron porque ahora ya no están) sus productos terminados a sus ingenieros para que lo prueben varios meses.
Blizzard tiene varios “servidores de prueba” que se actualizan con una “Versión Beta” de sus juegos. “Alpha es generalmente para varias personas, mientras que Beta es a menudo público o para miles de personas”.

Sin embargo, el tercer paso no se puede eliminar, cada empresa, independientemente de su tamaño, tiene que probar cada funcionalidad justo después de haberla codificado. Este proceso se puede automatizar un poco con las pruebas unitarias (solicite más información a Google), pero no se puede probar el producto terminado.