gpt4 book ai didi

ios - KIF 和 Quick/Nimble

转载 作者:可可西里 更新时间:2023-11-01 17:06:16 26 4
gpt4 key购买 nike

我正在尝试获取 KIFQuick/Nimble iOS 可以很好地协同工作,因此我可以使用 QuickSpecs 进行 KIF 测试。

我的测试目前看起来像这样:

class HomeSceenSpec: QuickSpec {

override func spec() {
describe("Home screen") {
it("should have a failing test") {
let tester = self.tester()
tester.waitForViewWithAccessibilityLabel("Blah")
}
}
}
}

文本“Blah”不存在,测试应该失败。 failWithException:stopTest: 正在调用,但它不会引发异常或导致 QuickSpec 测试失败。

如何整合这两种技术?

最佳答案

看起来 failWithException:stopTest: 调用 recordFailureWithDescription:inFile:atLine:expected: 可能存在问题。 (使用该方法会进行大量的调配)。

我想到的解决方案是在 QuickSpec 上创建类别/扩展:

import Quick
import Nimble
import KIF

extension QuickSpec {

func tester(_ file : String = __FILE__, _ line : Int = __LINE__) -> KIFUITestActor {
return KIFUITestActor(inFile: file, atLine: line, delegate: self)
}

func system(_ file : String = __FILE__, _ line : Int = __LINE__) -> KIFSystemTestActor {
return KIFSystemTestActor(inFile: file, atLine: line, delegate: self)
}

override public func failWithException(exception: NSException!, stopTest stop: Bool) {
if let userInfo = exception.userInfo {
fail(exception.description,
file: userInfo["SenTestFilenameKey"] as String,
line: userInfo["SenTestLineNumberKey"] as UInt)
} else {
fail(exception.description)
}
}
}

关于ios - KIF 和 Quick/Nimble,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28209769/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com