ReferenceError: mock is not defined Javascript

ReferenceError: mock is not defined Javascript

本文关键字:defined Javascript not is mock ReferenceError      更新时间:2023-09-26

启动所有内容的主js文件:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>InterfaceTest</title>
  <link rel="stylesheet" href="https://code.jquery.com/qunit/qunit-2.0.0.css">
  <script type="text/javascript" src="https://rawgit.com/angular/bower-angular-mocks/master/angular-mocks.js"></script>
  <script src="https://code.jquery.com/qunit/qunit-2.0.0.js"></script>
  <script type="text/javascript" src="http://code.jquery.com/jquery-2.2.4.min.js"></script>
  <script type="text/javascript" src="https://rawgit.com/danielfm/jshamcrest/master/src/jshamcrest.js"></script>
  <script type="text/javascript" src="https://rawgit.com/cleishm/jsmockito/master/src/jsmockito.js"></script>
  <script src="Interface.js" ></script>
  <script src="InterfaceTest.js" ></script>
</head>
<body>
  <div id="qunit"></div>
  <div id="qunit-fixture"></div>
</body>
</html>

接口测试:

QUnit.test("mockitoTest", function(assert) {
    var mockedObject = mock(Array);
    when(mockedObject).get(1).thenReturn("hello world");
    alert(mockedObject.get(1));
});

我需要使用 Jquery、Hamcrest 和 JsMockito 为 Interface 做一堆单元测试(不管里面有什么)。

我得到的错误:

Died on test #1     at file:///C:/Internship/JavaScript/Qunit/InterfaceTest.js:1:7: mock is not defined@ 
Source:     
ReferenceError: mock is not defined
    at Object.<anonymous> (file:///C:/Internship/JavaScript/Qunit/InterfaceTest.js:2:21)

我确定这是显而易见的,但是我已经将Mockito作为依赖项包含在内,所以我不知道为什么它说没有定义mock。我的假设是

 <script `type="text/javascript" src="https://rawgit.com/cleishm/jsmockito/master/src/jsmockito.js"></script>

一定是错的。

(我在另一个 StackOverflow 帖子中看到,如果您在 https://rawgit.com/上发布 GitHub 链接,那么您可以将其作为 SRC 包含在内,所以这就是这些链接的来源)

当我运行您的代码时,我看到错误Can not set mock of undefined并指向angular-mocks.js文件。

文件angular-mocks.js需要角度,但您不加载角度。