2016-09-24 1 views
12

Gibt es einen Weg zu ausgeschlossen Pods von Code Coverage?
Ich möchte Code Coverage nur für den Code, den ich geschrieben habe, sehen.Ausschließen von Pods aus Code Coverage in Xcode

Nicht, dass es sollte egal, aber ich bin mit Xcode 8.

+0

ähnliche Frage hier: http://stackoverflow.com/questions/40102012/code-coverage-with- cocopods-libary-ios-unit-test –

Antwort

12

Diese Schritte helfen:

1. fügen Sie diese Zeilen

# Disable Code Coverage for Pods projects 
post_install do |installer_representation| 
    installer_representation.pods_project.targets.each do |target| 
     target.build_configurations.each do |config| 
      config.build_settings['CLANG_ENABLE_CODE_COVERAGE'] = 'NO' 
     end 
    end 
end 

2 bis Podfile. run pod install

Jetzt werden keine Pods in der Testabdeckung angezeigt.

Hinweis: Es nur Objective-c Schoten aber nicht Swift

+0

Fab Lösung Danke! Wie können Sie "C" -Dateien ausschließen, wenn sie auch in den Pods vorhanden sind? – DrPatience

3
  1. Klicken Sie auf Ihrem Pods Projekt im Projekt-Navigator auf der linken Seite
  2. Auf der rechte Seite, offenes Projekt und Zielliste schließt wenn es nicht schon offen ist; Klicken Sie dann auf den Namen des Pod-Projekts (NICHT auf die Ziele).
  3. Klicken Sie auf Buildeinstellungen.
  4. Suchen Sie in der Suchleiste nach "CLANG_ENABLE_CODE_COVERAGE".
  5. Ändern Sie die Option "Code Coverage Support" auf "NO".
  6. Test erneut ausführen.
+3

Sie sollten das Pods-Projekt niemals ändern, da diese Einstellungen bei der nächsten 'pod install/update' verloren gehen. Die Lösung @ tung-fam ist der richtige Weg, dies zu tun. – Camsoft

1

Wenn Sie eine pod entwickeln und wollen Sie nur Codeabdeckung haben:

# Disable Code Coverage for Pods projects except MyPod 
    post_install do |installer_representation| 
     installer_representation.pods_project.targets.each do |target| 
     if target.name == 'MyPod' 
      target.build_configurations.each do |config| 
      config.build_settings['CLANG_ENABLE_CODE_COVERAGE'] = 'YES' 
      end 
     else 
      target.build_configurations.each do |config| 
      config.build_settings['CLANG_ENABLE_CODE_COVERAGE'] = 'NO' 
      end 
     end 
     end 
    end 
Verwandte Themen