2014-10-03 11 views
14

Ho installato alcuni test di unità XCTest per la mia applicazione e vorrei ogni volta che eseguo i test affinché venga eseguito in una nuova installazione dell'applicazione. Attualmente quando eseguo i test successivi, esegue i test nella stessa applicazione che è stata eseguita prima di avere molte informazioni di stato già modificate dai test precedenti.Come eseguire una nuova installazione dell'applicazione ogni volta che vengono eseguiti i test di unità?

C'è un modo per indicare che quando si eseguono i test di unità, è necessario eseguire i test su una nuova versione dell'applicazione?

+0

prodotto/del menu Clean –

+0

@SteveRosenberg Clean pulisce solo la vostra directory 'build', non disinstallare le app – Shizam

risposta

21

Forse funziona, ma solo per Simulatore.

In Product>Scheme>Edit Scheme...

enter image description here

xcrun simctl è linea di comando per controllare il simulatore iOS. Questa applicazione di disinstallazione com.yourcompany.AppName da avvia il simulatore prima di eseguire i test.

non so come fare in questo modo per dispositivo reale :(

+0

si potrebbe usare 'ios da implementare 'allo stesso modo forse? – Vish

+2

C'è un modo in cui questo potrebbe essere fatto prima di ogni test? –

+0

Il modo di utilizzare questo test intermedio è di eseguirlo in un file yml o shell all'interno di Jenkins – JJacquet

4

Oltre alla risposta @ di Rintaro, se si imposta "Fornire impostazioni di generazione da" per la vostra applicazione, è possibile aggiungere un generico di comando, che sarà continuare a lavorare quando il vostro pacco modifiche id:?.

xcrun simctl uninstall booted ${PRODUCT_BUNDLE_IDENTIFIER} 
+0

Questo non funziona per me – jakedunc

+0

Perché il downvote? Che cosa hai provato? Cosa ti rende così sicuro che questo non funziona? –

+0

Mi dispiace amico, è necessario modificare il post per me per cambiarlo. – jakedunc

Problemi correlati