如何在OPA5测试中切换IconTabBar

时间:2015-11-05 06:53:34

标签: automated-tests qunit sapui5

我的观点包含IconTabBarIconTabFilters

如何将当前活动的标签切换到另一个标签?通常的trigger("tap")方法似乎不起作用。

3 个答案:

答案 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!" }); }