2015-04-13 11 views
11

Il navigatore Test Xcode mostra un elenco di classi di casi di test.Come eliminare una classe di test Xcode Swift dal navigatore Test?

Desidero eliminare una classe del caso di test perché non è più necessaria.

Ho provato molti approcci tipici, come ad esempio premere Elimina, o cercare un'icona "-" o "Rimuovi", oppure cercare aiuto nella documentazione Apple Xcode.

ho trovato questa soluzione:

  1. nella navigazione di progetto, rimuovere il file dal progetto ed eliminare il file.

  2. Chiudere Xcode e riavviarlo. Il navigatore Test sembra perdere traccia delle classi di test e dei casi di test e mostrare zero elementi.

  3. Eseguire i test. Il navigatore Test sembra ricostruire l'elenco delle classi di test e dei casi di test.

Se questo ancora non funziona, provare questi ...

Elimina Xcode di dati derivati: menù

  1. Xcode -> Preferenze -> "Locations" icona -> " Sezione derivata ".

  2. Fare clic sulla piccola freccia del cerchio grigio; questo apre il Finder e mostra la cartella DerviedData.

  3. Elimina l'intera cartella.

Rebuild:

  1. Product menu -> Clean.

  2. Menu prodotto -> Build.

Esiste un modo più semplice per raggiungere l'obiettivo di eliminare una classe di test? Idealmente senza bisogno di riavviare Xcode, o ricostruire il progetto, ecc.?

tipo correlati di emissione: How can I delete Xcode test cases from the test case view?

sto usando Xcode 6.3 e Swift 1.2, se questo aiuta a conoscere.

Edit: Nei commenti, punti @CouchDeveloper alla Gazzetta Xcode 6.3 release notes, che descrivono un noto bug # 20.373.533:

test Swift non vengono rilevati automaticamente in questa versione di Xcode. Le annotazioni di prova nella barra laterale dell'editor di origine non verranno visualizzate e il navigatore di test e la tabella di test nell'azione Test del foglio di schema saranno vuoti. ...

La taglia su questa domanda è per qualsiasi soluzione o soluzione migliore. Qualsiasi soluzione alternativa va bene, come usare la GUI Xcode, o usare xcodebuild da riga di comando, o qualsiasi script di shell che blocca i file di progetto.

+1

Sei fortunato. Xcode 6.3 non mostra nemmeno i miei casi Swift Test in Test Navigator. Altre funzionalità correlate ai test delle unità non funzionano correttamente. L'esecuzione dei test potrebbe causare l'arresto anomalo di Xcode, quindi il riavvio di Xcode si blocca, ..., ecc. Ecc.;) – CouchDeveloper

+0

Ha! Puoi farmi un favore e revocare questo in modo da ottenere più visualizzazioni dagli sviluppatori? Ciò che loro rispondono può aiutarti anche tu. Aggiungerò una taglia quando il sito me lo permetterà. – joelparkerhenderson

+0

Questi sono noti bug in 6.3, è possibile leggere le [note sulla versione] (https://developer.apple.com/library/ios/releasenotes/DeveloperTools/RN-Xcode/Chapters/Introduction.html) nella sezione ** Testing **. E dal momento che ci siamo, il debugging è terribile: l'ispezione delle variabili spesso non è possibile, "next step" salta avanti e indietro e spesso si ferma nel codice di disassemblaggio, ... – CouchDeveloper

risposta

3

Utilizzando Xcode 6.2, tutto ciò che dovevo fare era passare alla navigazione Progetto, selezionare il file e premere Elimina. Ho quindi fatto clic sul pulsante "Rimuovi riferimento" nella finestra di dialogo di conferma che appare. Successivamente, i test in quel file sono scomparsi immediatamente dal navigatore Test. Aggiungendo il file, i test sono riapparsi.

io non ho avuto alcuna necessità di eliminare la cartella dati derivati, riavviare Xcode, ecc

Aggiungendo il file al progetto di nuovo immediatamente ripristinato le prove in navigatore test.

Questo è sicuramente il comportamento desiderato, e sembra che sia rotto in Xcode 6.3 ma probabilmente riparato nuovamente in 6.3.1. Quindi la vera risposta potrebbe essere semplicemente che è necessario eseguire l'aggiornamento alla versione 6.3.1 (o eseguire il downgrade alla versione 6.2).

Prima:

before filesbefore tests

Dopo:

after filesafter tests

+1

Grazie, la tua spiegazione ha un senso e una grafica fantastica. Xcode 6.3 non sembra funzionare, quindi sto passando a 6.4 beta per vedere se lo risolve. – joelparkerhenderson

2

È possibile aggiungere e rimuovere le prove per il progetto facilmente utilizzando la casella di controllo dei membri della classe di destinazione. Trova il file di classe nel Navigatore di progetto e selezionalo, quindi nel pannello Utility fai clic su File Inspector e vedrai una casella per l'appartenenza al target. Puoi accenderlo e spegnerlo. target membership

1

Se si desidera eliminare solo una singola classe di test, è possibile fare clic sul nome del file in Project Navigator e premere Elimina e Sposta nel cestino.

Se si desidera eliminare l'intero pacchetto Testing, fare clic sul nome del progetto nel Navigatore progetto. Quindi seleziona il tuo bersaglio Test. Fai clic sul pulsante meno (-) in basso per eliminarlo.

enter image description here

E 'una buona idea per fare Unit Testing (e test UI) nei vostri progetti. Quindi, se vuoi aggiungerli di nuovo, fai clic sul pulsante più (+).

Vedi anche

Problemi correlati