Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sapui5:我如何在OPA5上执行操作,然后运行?_Sapui5 - Fatal编程技术网

Sapui5:我如何在OPA5上执行操作,然后运行?

Sapui5:我如何在OPA5上执行操作,然后运行?,sapui5,Sapui5,我有一个测试旅程,点击一个按钮,期望得到一个具体的答案, 它的工作原理如下: When.onTheHomePage.iPressTheSearchButton(); Then.onTheHomePage.iSholdGetResponse(answer); 所以在我点击按钮后,我想看看我是否得到了正确的答案 问题是,我想要一个动作,如果它没有找到答案,它会点击另一个按钮 iSholdGetResponse: function (sAnswer) { var modelAnswer;

我有一个测试旅程,点击一个按钮,期望得到一个具体的答案, 它的工作原理如下:

When.onTheHomePage.iPressTheSearchButton();
Then.onTheHomePage.iSholdGetResponse(answer);
所以在我点击按钮后,我想看看我是否得到了正确的答案

问题是,我想要一个动作,如果它没有找到答案,它会点击另一个按钮

iSholdGetResponse: function (sAnswer) {
    var modelAnswer;
    return this.waitFor({
        viewName: "Home",
        matchers: function (oPage) {
            var sExpectedObj = oPage.getModel("msgData").getData()['msgData'];
            var sExpectedRes = sExpectedObj[sExpectedObj.length-1];
            modelAnswer = sExpectedRes.Text.toLowerCase();

            if(modelAnswer.indexOf(sAnswer.toLowerCase()) >= 0){
                return true;
            }else{
              //NEED TO DO HERE CLICK BUTTON *******
           }
        },
        success: function (data) {
            Opa5.assert.ok(true, "Answer Correct! (" +modelAnswer +")");
        },
        errorMessage: "Not expected answer"
    });
}

那么,如何触发“点击匹配”属性呢?

您必须在单独的测试中执行此操作:

1.测试1

When.onTheHomePage.iPressTheSearchButton();
    Then.onTheHomePage.iSholdGetResponse(answer).and.iSeeTheIncorrectAnswer;
2.测试2

When.onTheHomePage.iPressAnAnotherButton();
    Then.onTheHomePage.iSholdGetResponse(answer)...