我正在尝试测试我的视图并检查 UI 内的特定视图。我找到了一些用于体内视图的内容,但没有找到用于工具栏的内容。请参阅以下示例:
import Foundation
import Quick
import Nimble
import ViewInspector
struct MyView: View {
var body: some View {
NavigationStack {
VStack {
Image(systemName: "gearshape")
.identifier("image")
}
.toolbar {
ToolbarItem(placement: .bottomBar) {
Button("Press me")
.identifier("button")
}
}
}
}
}
class MyViewSpec: QuickSpec {
override static func spec() {
describe("A View") {
var view: InspectableView<ViewType.ClassifiedView>!
beforeEach {
view = try! MyView().inspect()
}
it("Has a Image") {
expect(try view.find(viewWithId: "image")).notTo(throwError())
}
it ("Has an item in the toolbar") {
expect(try view.find(viewWithId: "button")).notTo(throwError()) // DOES NOT WORK
// expect(try view.toolbar()) // CANT PASS AN ID
}
}
}
}
我只想检查ID为“button”的Button是否存在,但找不到视图。 我尝试通过 Google 寻找解决方案,但不幸的是我没有找到解决此问题的任何方法。也许有人已经遇到过这个问题并且知道如何解决这个问题?预先感谢:-)
查看库的测试,有一个可能是预期方法的示例:
.toolbar(id: "abc") { ToolbarItem(id: "") { Text("") } }
随后:
XCTAssertEqual(try sut.inspect().toolbar(1).identifier(), "abc")