簡體   English   中英

Swift錯誤“變量在其初始值內使用”

[英]Swift Error “Variable used within its own initial value”

我正在為我的應用程序編寫XCUITest。 我聲明警報是為了使用waitForExpectationsWithTimeout使我的測試異步....但是,它在第​​5行的alert聲明中拋出了錯誤Variable used within its own initial value

    let timeout = NSTimeInterval()
    let app = XCUIApplication()

    let exists = NSPredicate(format: "exists == 1")
    let alert = alert.buttons["OK"]


    testCase.addUIInterruptionMonitorWithDescription("Enable Notifications") { (alert) -> Bool in
            alert.buttons["OK"].tap()
        return true
    }

    self.buttons["Enable notifications"].tap()
    testCase.expectationForPredicate(exists, evaluatedWithObject: alert, handler: nil)
    testCase.waitForExpectationsWithTimeout(timeout, handler: nil)
    app.tap()

有人可以告訴我為什么會引發此錯誤,以及我可以采取哪些措施來解決此問題。 提前致謝。

這是因為在您的行號。 5,你寫了

let alert = alert.buttons["OK"]

在此行之前從未聲明過alert,因此您不能編寫此代碼。

舉例來說,

let a = a+5

現在,編譯器將拋出相同的錯誤,因為它不知道之前未聲明的'a'值。

暫無
暫無

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

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