我尝试在现有的.opa.qunit.js文件中添加另一个测试,该文件需要完全重启我的应用程序。 我试过的是打电话给" iTeardownMyAppFrame"在我的测试中,然后再次" iStartMyAppInAFrame"确保干净的设置。
首先显示iFrame但立即关闭,经过一段时间后,测试只是超时。以下两种方法只需调用" iTeardownMyAppFrame"和" iStartMyAppInAFrame"没别的。
opaTest("FirstTest", function(Given, When, Then) {
Given.iStartTheSampleApp();
//Testlogic
});
opaTest("TestWithCleanState", function(Given, When, Then) {
Given.iShutdownTheApp();
//Until here everything above works fine
Given.iStartTheSampleApp();
//Testlogic
});
//EOF
控制台上没有错误,只有两条消息每秒重复:
sap-ui-core.js:15219 2015-03-11 10:05:37 Opa check was undefined -
sap-ui-core.js:15219 2015-03-11 10:05:37 Opa is executing the check: function () {
if (!bFrameLoaded) {
return;
}
return checkForUI5ScriptLoaded();
} -
" iTeardownMyAppFrame"的预期功能是什么? 它应该仅用于在所有测试结束时拆除整个测试吗? 或者它是否也可用于重置应用程序以确保在测试开始时处于干净状态?如果是这种情况应该如何运作?
由于
答案 0 :(得分:1)
teardonw删除iframe,在下一次测试中你必须重新启动它。 这样您就可以编写可以独立运行的独立测试。
这里有一个例子:
Opa sample with 2 isolated tests
如果按下test2上的重新运行按钮,它将独立执行而不依赖于test1
BR, 托拜厄斯