मैं एक ऐप में मंदिर 8 नामक एक इन-हाउस कोकोपॉड का उपयोग कर रहा हूं जिसे मैं बना रहा हूं। यहाँ मेरी Podfile है:यूनिट टेस्ट में कोकोपॉड का उपयोग करने में असमर्थ
platform :ios, '9.0'
def temple8
pod 'j2objc-temple8-debug', :configuration => ['Debug'], :path => '../temple8/build/j2objcOutputs'
pod 'j2objc-temple8-release', :configuration => ['Release'], :path => '../temple8/build/j2objcOutputs'
end
target 'cartful-ios' do
use_frameworks!
temple8
pod 'Stripe'
pod 'Alamofire', '~> 4.0'
pod 'FontAwesomeKit', :git => 'https://github.com/PrideChung/FontAwesomeKit.git'
pod 'KeychainAccess'
pod 'pop', '~> 1.0'
pod 'libPhoneNumber-iOS', '~> 0.8'
pod 'AsyncDisplayKit', :git => 'https://github.com/facebook/AsyncDisplayKit.git'
pod 'Intercom'
pod 'Mixpanel-swift'
pod 'UICountingLabel'
pod 'DTFoundation'
target 'cartful-iosTests' do
inherit! :search_paths
temple8
end
target 'cartful-iosUITests' do
inherit! :search_paths
temple8
end
end
post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['SWIFT_VERSION'] = '3.0'
end
end
end
मैं अपने परीक्षण में temple8 के कुछ हिस्सों को संदर्भित करने की जरूरत है जिसके कारण मैं इसे दोनों परीक्षण लक्ष्यों में शामिल किया है। लेकिन तब जब मैं अपने परीक्षण के किसी भी चलाने के लिए, मैं त्रुटियों की एक लंबी सूची इस तरह मिलती है:
ObjC [83,693]: कक्षा PLBuildVersion दोनों /Applications/Xcode.app/Contents/Developer/Platforms में कार्यान्वित किया जाता /iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/PrivateFrameworks/AssetsLibraryServices.framework/AssetsLibraryServices (0x112334998) और /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs /iPhoneSimulator.sdk/System/Library/PrivateFrameworks/PhotoLibraryServices.framework/PhotoLibraryServices (0x112156880)। इन दोनों में से कोई एक प्रयोग किया जाएगा। कौन सा अपरिभाषित है।
मैंने शुरू में सोचा था कि कक्षाओं के दोहराव परीक्षण लक्ष्यों और ऐप के लक्ष्य दोनों में मंदिर 8 सहित थे। लेकिन अगर मैं परीक्षण लक्ष्य से temple8 निकालने के लिए, किसी भी समय मैं अपने परीक्षण में @testable import ...
इस्तेमाल करने की कोशिश, मैं एक
Failed to import bridging header...
निर्माण त्रुटि मिलती है। इसका मतलब है कि ऐप के ब्रिजिंग हेडर में मंदिर 8 हेडर फाइलें परीक्षणों से नहीं मिल सकती हैं। तो मुझे यकीन नहीं है कि सबसे अच्छा तरीका यहां क्या है।
वैसे यह लगता है जैसे मैं ' एम यूनिट परीक्षण लिखने से मना कर दिया जब तक कि ऐप्पल इस समस्या को हल नहीं करता। एक अच्छी स्थिति नहीं है ... शुक्र है कि ऐप का अधिकांश तर्क मंदिर 8 में ही है, जिसका अच्छी तरह से परीक्षण किया जाता है। – AdColvin