मैंने एक्सकोड 7 पर एक प्रोजेक्ट बनाया है जो कोड कवरेज डेटा उत्पन्न करता है।llvm-cov से .gcov फ़ाइल कैसे उत्पन्न करें?
अपने DerivedData फ़ोल्डर के अंदर, मैं llvm-cov show
चला सकते हैं:
/usr/local/opt/llvm/bin/llvm-cov show -instr-profile Build/Intermediates/CodeCoverage/testetestes/Coverage.profdata Build/Intermediates/CodeCoverage/testetestes/Products/Debug-iphonesimulator/testetestes.framework/testetestes
यह इस तरह एक उत्पादन का उत्पादन होगा:
/Users/marcelofabri/Desktop/testetestes/testetestes/Example.swift:
| 1|//
| 2|// Example.swift
| 3|// testetestes
| 4|//
| 5|// Created by Marcelo Fabri on 09/06/15.
| 6|// Copyright © 2015 Marcelo Fabri. All rights reserved.
| 7|//
| 8|
| 9|import UIKit
| 10|
| 11|class Example: NSObject {
1| 12| func testando() {
1| 13| if let url = NSURL(string: "dasdas") {
1| 14| print("ae \(url)")
0| 15| } else {
0| 16| print("oi")
0| 17| }
1| 18| }
| 19|}
/Users/marcelofabri/Desktop/testetestes/testetestes/OutraClasse.swift:
| 1|//
| 2|// OutraClasse.swift
| 3|// testetestes
| 4|//
| 5|// Created by Marcelo Fabri on 18/06/15.
| 6|// Copyright © 2015 Marcelo Fabri. All rights reserved.
| 7|//
| 8|
| 9|import UIKit
| 10|
| 11|class OutraClasse: NSObject {
| 12|
1| 13| func outroTestando() {
1| 14| if let numero = Int("123") {
1| 15| print("ae \(numero)")
0| 16| } else {
0| 17| print("oi")
0| 18| }
1| 19| }
| 20|
| 21|}
हालांकि, मैं .gcov
फ़ाइलें प्राप्त करना चाहते हैं, यह है, क्योंकि क्या अधिकांश उपकरण का उपयोग करें। आउटपुट को पार्स किए बिना और .gcov
फ़ाइल मैन्युअल रूप से बनाने के बिना ऐसा करने का कोई तरीका है?
लगता परिचय lik ई काम पहले ही शुरू हो चुका है: https://github.com/venmo/slather/issues/89 –
मैंने पीआर शाखा से स्लेदर को आजमाया है और ब्लॉग पोस्ट में अपने अनुभवों का वर्णन किया है: http://goo.gl/UUBrBu। यह लगभग सही है, लेकिन मुझे llvm-cov और slather से अलग कवरेज प्रतिशत मिलता है, इसलिए इसे कुछ सुधारों की आवश्यकता हो सकती है। – i4niac