我的观点包含IconTabBar个IconTabFilters。
如何将当前活动的标签切换到另一个标签?通常的trigger("tap")
方法似乎不起作用。
答案 0 :(得分:1)
经过一些调试后,我发现在saptouchend
内的图标上触发了伪事件IconTabFilter
。
return this.waitFor({
id: "mySecondTab-icon",
viewName: sViewName,
success: function (control) {
control.$().trigger("saptouchend");
},
errorMessage: "Second IconTabFilter not found in IconTabBar"
});
答案 1 :(得分:0)
我喜欢你的解决方案
通常我会查看控件的QUnit测试,并希望他们做了类似的事情
例如
// Press SPACE key on second IconTabFilter to expand
sap.ui.test.qunit.triggerKeydown(oControl.$(), jQuery.sap.KeyCodes.SPACE);
更新: 刚注意到TEST Tutorial中的一个解决方案 - 不确定我喜欢它,因为它没有模拟用户交互
iPressOnTheTabWithTheKey: function (sKey) {
return this.waitFor({
id: "iconTabBar",
viewName : sViewName,
success: function (oIconTabBar) {
oIconTabBar.setSelectedKey(sKey);
},
errorMessage: "Cannot find the icon tab bar"
});
}
答案 2 :(得分:0)
一种简单的方法是我们可以使用id / icon来选择你想要的iconTab然后添加一个动作,在你的情况下将是一个按下。
iClickOnSecondIconTabBAr: function() {
return this.waitFor({
controlType: "sap.m.IconTabFilter",
matchers: new sap.ui.test.matchers.Properties({
icon: "sap-icon://inspection"
}),
actions: new Press(),
errorMessage: "Did not find the IconTabBar Button!"
});
}