Uso il framework GHUnit per testare la libreria statica. In questo momento ho bisogno di toccare il pulsante Esegui per iniziare i miei test. Ma vorrei iniziare i test all'avvio dell'applicazione perché ho bisogno che teamcity lanci la mia testApp. Quindi, come posso modificare l'interfaccia utente standart e avviare test automatici?Come avviare GHUnit test senza toccare il pulsante Esegui?
risposta
Imposta il tuo obiettivo di test dell'unità in base alla tua applicazione, in modo che l'applicazione venga sempre creata prima dei test dell'unità.
Quindi, è sufficiente aggiungere un metodo "setUp()" per avviare l'app (e attendere che venga avviata) prima di continuare.
Verificare che l'applicazione è già in esecuzione:
NSArray * app = [[NSWorkspace sharedWorkspace] valueForKeyPath: @ "launchedApplications.NSApplicationBundleIdentifier"]; BOOL myAppIsRunning = [apps containsObject: com.mycompany.myapp];
lancio dell'applicazione (in setup()) e attendere:
[[NSWorkspace sharedWorkspace] launchAppWithBundleIdentifier: opzioni com.mycompany.myapp: NSWorkspaceLaunchWithoutActivation additionalEventParamDescriptor: NULL launchIdentifier: nil]; mentre (! [Self isRunning]) // vedere sopra { sleep (1); }
Do prodotto -> Modifica schema ... -> Argomenti -> Variabili d'ambiente, quindi impostare GHUNIT_AUTORUN
-YES
.
Lei signore, dovrebbe essere lodato. Grazie! – mccrackend