在OPA5中未正确加载资源

时间:2014-10-24 14:46:50

标签: javascript eclipse sapui5

我使用OpenUI5创建我的应用程序,我想尝试集成OPA5来测试它。 我写了我的测试页:TestOPA.html

<!DOCTYPE HTML>
<html>

  <head>
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <title>Opa sample for matchers</title>

    <script id="sap-ui-bootstrap" src="https://openui5.netweaver.ondemand.com/resources/sap-ui-core.js"></script>

    <link rel="stylesheet" href="https://openui5.netweaver.ondemand.com/resources/sap/ui/thirdparty/qunit.css" type="text/css" media="screen" /> 

    <script>
      (function () {
        jQuery.sap.require("sap.ui.thirdparty.qunit");
        jQuery.sap.require("sap.ui.test.Opa5");
        jQuery.sap.require("sap.ui.test.opaQunit");
        var Opa = sap.ui.test.Opa;
        var Opa5 = sap.ui.test.Opa5;

        module("Matchers");

        opaTest("Should find a Button with a matching property", function(Given, When, Then) {

          // Act
          Given.iStartMyAppInAFrame("../index.html");

          /* When.waitFor({
            viewName : "view.Main",
            controlType : "sap.m.Button",
            matchers : new sap.ui.test.matchers.PropertyStrictEquals({name : "text", value : "Changed text"}),
            success : function (aButtons) {
              ok(true, "Found the button: " + aButtons[0]);
            },
            errorMessage : "Did not find the button with the property Text equal to Changed text"
          });

          Then.iTeardownMyAppFrame(); */
        });

      })();
    </script>

  </head>
  <body>
    <h1 id="qunit-header">Opa sample for matchers</h1>
    <h2 id="qunit-banner"></h2>
    <h2 id="qunit-userAgent"></h2>
    <ol id="qunit-tests"></ol>
    <div id="qunit-fixture"></div>
  </body>
</html>

index.html是我的应用的根源。在流程内(不是在开始时)我加载未正确加载的资源。

我想加载资源http://localhost:8080/ZWebapp2/apps/appChangePwd/changePwd.js 但浏览器的控制台显示错误,加载资源http://localhost:8080/ZWebapp2/index.htmlapps/appChangePwd/changePwd.js

在所有浏览器上它都可以正常工作(打开http://localhost:8080/ZWebapp2/apps/appChangePwd/changePwd.js)但我在启动时遇到问题TestOPA.html

如果我通过 Run as - &gt;在内部Eclipse浏览器上启动我的应用程序(index.html),我会遇到同样的问题。 Web App Preview

1 个答案:

答案 0 :(得分:0)

也许您使用相对路径引用文件,但是您想要一个绝对路径。以下是如何使用UI5的jQuery.sap.require功能执行此操作的示例: JSBIN exmaple

bin中的require语句应始终创建正确的请求。

在您的情况下,您似乎想声明一个绝对路径,这意味着它将在您托管(localhost:8080)后开始构建URL。相对路径从index.html所在的位置开始。