当前位置 : 主页 > 手机开发 > ios >

ios – 如何从UI测试访问App Delegate?

来源:互联网 收集:自由互联 发布时间:2021-06-11
我想在UI测试期间从启动的应用程序的App Delegate访问特定的属性路由器,但我无法弄清楚这是否可行.我试过了: let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegatelet router = appDe
我想在UI测试期间从启动的应用程序的App Delegate访问特定的属性路由器,但我无法弄清楚这是否可行.我试过了:

let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
let router = appDelegate.router

但这会导致失败,甚至无法建立.我在我的项目模块上使用@testable.有任何想法吗?

Xcode UI测试的设计使得测试代码只能看到用户可以看到的内容,因此测试代码中不能使用或检查被测应用程序中的任何对象.这也是为什么屏幕上的视图表示为XCUIElement对象而不是UIView后代的原因.

UI测试在与测试中的应用程序不同的可执行文件中运行.将附加信息从应用程序传递到UI测试的唯一方法是构造一个包含信息的字符串,并将其用作元素的可访问性标识符.

如果要测试需要从应用程序代码访问对象的内容,则很可能需要编写单元测试而不是UI测试.

网友评论