如何在SAP UI5中设置单元测试(qUnit)?

3
我正在尝试为我的简单SAP UI5应用程序添加单元测试(使用qUnit)。根据我的理解,您需要的主要文件包括:
  • initialTest.html(测试引导的位置)
  • qunit.js(框架库)
  • qunit.css(框架样式表)
  • test.js(编写单元测试的位置)
  • 目标代码(包含要测试的代码的源文件)
我面临的问题是加载所需的目标代码进行测试。
我有以下基本文件结构

enter image description here

我需要帮助,如何正确引用我的tests.js文件中的代码文件?(例如:我想测试位于Main.controller.js中的代码)

tests.js

sap.ui.require(["Controller/Main.controller.js"],

function(MyController){
   //Quint code
   test("hello test", function(assert) {
    assert.ok(1 == "1", "Passed!");
  });
  });

initialTest.html

    <!DOCTYPE html>
    <html>
    <head>
      <meta charset="utf-8">
      <title>QUnit Example</title>
      <link rel="stylesheet" href="//code.jquery.com/qunit/qunit-1.15.0.css">
          <script id="sap-ui-bootstrap"
                    src="https://sapui5.hana.ondemand.com/resources/sap-ui-core.js">
          </script>    
          <script src="//code.jquery.com/qunit/qunit-1.15.0.js"></script>
          <script src="tests.js"></script>
          <script src="/Controller/Main.controller.js"></script>          
          <script>
          </script>
    </head>
    <body>
      <div id="qunit"></div>
      <div id="qunit-fixture"></div>
    </body>
    </html>

希望这个链接能够帮到你 OPENUI5单元测试 - Captain JK
1个回答

0

我认为这个问题并没有表达正确的问题,因为我看到您在尝试引用应用程序的控制器文件时遇到了问题,而不是在qUnit测试中。

以下是您应该引用文件的方式

sap.ui.require(
 [
  "sap/ui/demo/wt/controller/Master",         <--- path to your Controller file
 ],
 function (MasterController) {

    //refer methods of controller file
    //MasterController.methodName
}

您可以在这里阅读有关sap.ui.require的更多信息:文档

不过,如果您正在寻找有关qUnits的更多详细信息,则可以参考以下文档:

让我知道这是否有所帮助!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接