尝试运行qunit测试时获得404

时间:2015-06-18 09:53:53

标签: sapui5 qunit

我正在使用试用版网站并尝试从/ test-resources文件夹运行myqunittest.qunit.html。通过使用url /test-resources/myqunittest.qunit.html。但是,每当我尝试运行它时,它只会返回404错误。

这是定义资源的问题吗?我不明白,例如,如何找到view / Main.view.xml,而不是test-resources文件夹中的任何内容(我尝试创建一个包含单行的简单js或html文件)它仍然是404' d)。

我已经直接从qunit帮助页面QUnit Testing Fundamentals复制了该页面,这段代码似乎意味着它应该在没有任何引用应用程序的其余部分的情况下工作。

我在两个html文件中尝试过sap.ui.localResources和data-sap-ui-resourceroots的各种组合,但无济于事。

我的文件夹结构如下:

myapp
    test-resources
        myqunittest.qunit.html
    view
        Main.controller.js
        Main.view.xml
    index.html

myqunittest.qunit.html

<html>
<head>
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />

    <script id="sap-ui-bootstrap" 
     type="text/javascript"
     src="resources/sap-ui-core.js"
     data-sap-ui-theme="sap_bluecrystal"
     data-sap-ui-noConflict="true">
    </script>

    <link rel="stylesheet" href="resources/sap/ui/thirdparty/qunit.css" type="text/css" media="screen" />
    <script type="text/javascript" src="resources/sap/ui/thirdparty/qunit.js"></script>
    <script type="text/javascript" src="resources/sap/ui/qunit/qunit-junit.js"></script>
    <script type="text/javascript" src="resources/sap/ui/qunit/QUnitUtils.js"></script>


</head>
<body>
    <div id="qunit"></div>
</body>
</html>

的index.html

<!DOCTYPE HTML>
<html>
<head>
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta http-equiv='Content-Type' content='text/html;charset=UTF-8'/>

    <script src="resources/sap-ui-core.js"
            id="sap-ui-bootstrap"
            data-sap-ui-libs="sap.m"
            data-sap-ui-resourceroots='{"myapp": "./"}'
            data-sap-ui-theme="sap_bluecrystal">
    </script>

    <script>
            sap.ui.localResources("view");

            var app = new sap.m.App({initialPage:"idMain"});
            var page = sap.ui.view({id:"idMain", viewName:"myapp.view.Main", type:sap.ui.core.mvc.ViewType.XML});
            app.addPage(page);
            app.placeAt("content");
    </script>

</head>
<body class="sapUiBody" role="application">
    <div id="content"></div>
</body>
</html>

2 个答案:

答案 0 :(得分:1)

在index.html中,您将相对于资源文件夹

中的index.html加载ui5

所以在您的服务器上还有另一个文件夹

myapp
    resources
        sap-ui-core.js
    test-resources
        myqunittest.qunit.html
    view
        Main.controller.js
        Main.view.xml
    index.html

问题是,您正在相对于测试资源加载核心。你可能需要进入1个目录。

所以在myqunittest.qunit.html中 将引导程序更改为

<script src="../resources/sap-ui-core.js"

祝你好运, 托拜厄斯

答案 1 :(得分:0)

SAP WebIDE将neo-app.json添加到您创建的项目中。它包含此条目:

{
    "path": "/test-resources",
    "target": {
        "type": "service",
        "name": "sapui5",
        "entryPath": "/test-resources"
    },
    "description": "SAPUI5 Test Resources"
}

这干扰了创建我自己的test-resources文件夹(项目中尚未存在),并导致404错误。删除此条目已解决了我的问题。