2015-12-17 9 views
12

Quando lavori in Xcode, è spesso carino tirare su casi di test di unità in un editor di assistente. Attualmente, ho selezionato manualmente il file di test, ma vedo che l'editor di assistente ha un'opzione per Test Classes.Usa l'Assistente Editor classi di test di Xcode con Swift Classes

Ho provato a ottenere questa opzione per tirare automaticamente il mio file di test, ma non riesco a farlo funzionare. C'è una sorta di configurazione necessaria per questo? Non funziona solo per progetti veloci?

+3

Non sono riuscito a trovare nemmeno una configurazione sulle preferenze Xcode. Quello che faccio di solito è 'cmd + shift + o', scrivi il nome del file di prova e' cmd + opt + enter'. Spero che ti aiuti nel caso in cui non conosci quelle scorciatoie. –

+1

Oh, non sapevo su 'cmd + opt + invio'. È davvero utile Dovrò usarlo più spesso. – esthepiking

+0

Tutto ciò che serve è 'opzione + invio' – Gargoyle

risposta

1

Le scorciatoie menzionate in altre risposte funzionano in modo ottimale, ma non fanno in modo che l'editor dell'assistente funzioni automaticamente con le classi di test. Si scopre che non ha funzionato con il codice swift in precedenza, ma Apple ha appena aggiunto il supporto per questo di Xcode 9:

Un file con un nome di base di FooTest o FooTests è ora considerato una controparte di un file con una base nome di Foo per la navigazione e Assistant Editor. (28981734)

Così, con Xcode 9, il nome del file di destinazione di prova deve avere lo stesso nome del file di codice principale + o 'Test' o 'test' e le classi di test Xcode assistente al montaggio funzionerà automaticamente.

+1

Sarebbe bello, ma non sembra funzionare per Swift in Xcode 9b2. –

+0

E 'stato aggiunto nella versione beta 3 – esthepiking

+0

Sfortunatamente, non funziona anche per me in b3, e non è elencato come nuovo o risolto nelle note di rilascio. –

2

L'editor di assistente può aprire automaticamente il file companion in molti casi. Tuttavia, afaik, non vi è alcuna impostazione automatica per l'apertura del test dell'unità.

per ottenere il comportamento si vuole si può ricerca fuzzy con aperta rapidamente + + o quindi aprire il risultato nel assistente al montaggio con + .

Si potrebbe anche trovare impiego in aperta rapidamente + + o poi + .

È possibile visualizzare ulteriori informazioni su "Working Efficiently with Xcode" here.

0

Sembra che su Xcode 8 venga automaticamente impostata la classe di test appropriata nell'editor degli assistenti dopo aver importato la classe originale all'interno della classe di test.

@testable import YOUR_MODULE_NAME 

class MyViewControllerTests: XCTestCase { 

    var myVC : MyViewController! 

} 

Successivamente, si troveranno MyViewControllerTests nell'editor degli assistenti in "Classi di test".

+0

In Xcode 9b2 questo funziona per me con Objective-C ma non Swift. –