具有预期内容的sap.m.MessageToast的OPA匹配器

时间:2016-01-11 08:26:35

标签: sapui5

我有一个与this

类似的问题

但是,如何检查sap.m.MessageToast的内容是否正确?

iShouldSeeAToastMessage : function(sText) {
    return this.waitFor({
        pollingInterval : 100,
        check : function() {
            return !!sap.ui.test.Opa5.getJQuery()(".sapMMessageToast").length;
        },
        success : function (oMessage) {
            strictEqual(oMessage[0].getText(), sText, "The message display correctly");
        },
        errorMessage : "No Toast message detected!"
    });
}

我尝试了上面的代码。但是,也许,success回调不返回任何对象。所以,我收到了错误消息:无法读取null

的属性'0'

=======================================

我尝试了以下代码。测试用例通过。但是,我不确定它是否是正确的测试代码。

success : function () {
    strictEqual(sap.ui.test.Opa5.getJQuery()(".sapMMessageToast")[0].innerHTML, sText, "The message display correctly");
}

1 个答案:

答案 0 :(得分:0)

我构建了一个JS Bin来说明匹配器。

这是匹配代码:

new Opa5().waitFor({
            matchers: function () {
              return  jQuery(".sapMMessageToast").text();
            },
            success: function (sMessage) {
              MessageToast.show("found a message toast with the message " + sMessage);
            }
});

如果在匹配器中返回的内容不同于布尔值,则会传递给成功。

the API documentation中的' matchers'中描述了它。参数。