Ios 推送新视图控制器(tuneup.js)后UIAutomation测试失败
我刚开始尝试使用tuneup.js实现UIAutomation。我可以很好地测试我的第一个窗口,但第二个窗口失败了——我的应用程序仍在查看第一个窗口,并看到例如“使用Facebook登录”按钮。我尝试过增加延迟,但这似乎没有帮助。知道我做错了什么吗Ios 推送新视图控制器(tuneup.js)后UIAutomation测试失败,ios,ui-automation,ios-ui-automation,Ios,Ui Automation,Ios Ui Automation,我刚开始尝试使用tuneup.js实现UIAutomation。我可以很好地测试我的第一个窗口,但第二个窗口失败了——我的应用程序仍在查看第一个窗口,并看到例如“使用Facebook登录”按钮。我尝试过增加延迟,但这似乎没有帮助。知道我做错了什么吗 #import "tuneup.js" target = UIATarget.localTarget(); application = target.frontMostApp(); test("Test first-run view contro
#import "tuneup.js"
target = UIATarget.localTarget();
application = target.frontMostApp();
test("Test first-run view controller", function(app, target) {
assertWindow({
buttons : [
{ name : "Sign in with Facebook"},
{ name : "Create account"},
{ name : "Login"},
{ name : "Try"}
],
onPass: function(window) {
var createAccountButton = window.buttons()["Create account"]
createAccountButton.tap();
}
});
});
test("Test Sign-in screen", function(app, target) {
assertWindow({
buttons : [
{ name : "Sign up"}
]
});
});
啊,我发现发生了什么事。我没有意识到,但我的登录屏幕有一个包含按钮的滚动视图。该代码运行良好:
test("Test the account creation", function(app, target) {
assertWindow({
scrollViews: [
{ buttons : [
{name :"Sign up"},
{name : "Terms and Conditions"}
]
}
],
onPass: function(window) {
var signUpButton = window.scrollViews()[0].buttons()["Sign up"];
signUpButton.tap()
}
});
});
只是想知道你的脚本是否在真正的设备上运行?模拟器?或者没有?嘿@WendyMunmunWang,如果我没记错的话,我在设备和模拟器上都运行了脚本,但是我已经很久没有看过tuneup.js了。苹果不赞成基于JS的UIAutomation,并添加了一个新的基于Objective-C的UI测试功能。@MaxBabriel你认为不使用任何模拟器或真实设备运行是可能的吗?我想通过阅读得到测试结果logs@WendyMunmunWang不,我很确定你需要在模拟器或设备上运行它。有些东西必须运行代码。可以让测试将结果记录到您可以读取的文件中