簡體   English   中英

嘗試使用Quick在項目中運行測試時出現細分錯誤

[英]Segmentation fault when trying to run tests in project using Quick

這是我的LoginViewControllerSpec類的樣子:

class LoginViewControllerSpec: QuickSpec {

override func spec() {
    describe("LoginViewController") {
        var loginViewController: LoginViewController!

        beforeEach {
            loginViewController = LoginViewController()
        }
    }
}

嘗試運行此特定測試時,出現錯誤提示

Command failed due to signal: Segmentation fault: 11

我發現這是由我的LoginViewController實現BSKeyboardControlsDelegate引起的,BSKeyboardControlsDelegate是通過CocoaPods安裝的Objective-C庫。

因此,我猜這是由於無法從我的測試包訪問BSKeyboardControls造成的。

這是我的Podfile:

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
inhibit_all_warnings!

pod 'BSKeyboardControls'

target 'SwitchboardTests' do
  use_frameworks!
  pod 'Quick'
  pod 'Nimble'
end

我嘗試添加link_with將BSKeyboardControls與我的測試包鏈接在一起,但是它不起作用。

我很樂意提供一些建議,如何配置項目以及Podfile的外觀。

如果有人遇到類似問題,我會發布一個答案。

解決的辦法是移動use_frameworks! 超出目標范圍。 因此,現在我還在為Objective-C Pod使用框架。 這樣,您就不再需要在橋接頭文件中導入Objective-C庫,只需像這樣導入它們: import BSKeyboardControls

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM