摩卡,"要求未定义"在浏览器中进行测试时

时间:2018-06-04 05:41:29

标签: javascript mocha

我使用的是Mocha 5.2.0,npm 6.1.0,我试图在Chrome浏览器中进行测试。

但是当我运行测试时,浏览器会说'#34;要求未定义"。

我想在浏览器中看到测试结果,但它可以在终端中使用。

我没有使用像webpack等构建系统。

测试/ test.js

var assert = require("assert");
    describe("Array", function() {
        describe("#indexOf()", function() {
            it("should return -1 when the value is not present", function() {
                assert.equal([1,2,3].indexOf(4), -1);
        });
    });
});

的index.html

...
<link href="https://cdnjs.cloudflare.com/ajax/libs/mocha/5.2.0/mocha.min.css" rel="stylesheet">
...
<body>
    <div id="mocha"></div>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/mocha/5.2.0/mocha.min.js"></script>
    <script>
        mocha.setup("bdd");
    </script>

    <script src="test/test.js"></script>

    <script>
        mocha.checkLeaks();
        mocha.run();
    </script>
</body>

的package.json

{
    "scripts": {
        "test": "mocha"
    }
}

已编辑 Karthikeyan

的index.html

<script data-main="test/test.js" src="require.js"></script>

require.js:168 Uncaught Error:模块名称&#34;断言&#34;尚未加载上下文:_。使用require([])

1 个答案:

答案 0 :(得分:0)

缺少Require.js。在导入mocha.js之前在您的身体内导入require.js