Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 茉莉花html不';t在浏览器中运行,但在控制台中工作_Javascript_Angularjs_Unit Testing_Jasmine_Yeoman - Fatal编程技术网

Javascript 茉莉花html不';t在浏览器中运行,但在控制台中工作

Javascript 茉莉花html不';t在浏览器中运行,但在控制台中工作,javascript,angularjs,unit-testing,jasmine,yeoman,Javascript,Angularjs,Unit Testing,Jasmine,Yeoman,我有一个Angularjs项目和yeoman一起建立,除了单元测试部分,一切都很好。测试工作在控制台模式下(当我在cmd中使用grunt-service或grunt-test时),但当我尝试运行runner.html文件在浏览器上查看时,它没有任何测试规范。 My package.json依赖项如下所示: "devDependencies": { "grunt": "~0.4.5", .... "karma-ng-scenario": "^0.1.0", "gru

我有一个Angularjs项目和yeoman一起建立,除了单元测试部分,一切都很好。测试工作在控制台模式下(当我在cmd中使用
grunt-service
grunt-test
时),但当我尝试运行
runner.html
文件在浏览器上查看时,它没有任何测试规范。 My package.json依赖项如下所示:

"devDependencies": {
    "grunt": "~0.4.5",
    ....
    "karma-ng-scenario": "^0.1.0",
    "grunt-karma": "^0.8.3",
    "karma": "^0.12.23",
    "karma-ng-html2js-preprocessor": "^0.1.0",
    "karma-jasmine": "^0.2.2",
    "karma-firefox-launcher": "^0.1.3",
    "karma-chrome-launcher": "^0.1.4",
    "grunt-ng-annotate": "^0.3.2",
    "grunt-angular-templates": "^0.5.7"
}
在我的runner.html中是这样的

<!doctype html>
<html lang="en">

<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Jasmine Spec Runner v2.0.3</title>

    <link rel="shortcut icon" type="image/png" href="lib-jasmine-2.0.3/jasmine_favicon.png">
    <link rel="stylesheet" type="text/css" href="lib-jasmine-2.0.3/jasmine.css">

    <script type="text/javascript" src="lib-jasmine-2.0.3/jasmine.js"></script>
    <script type="text/javascript" src="lib-jasmine-2.0.3/jasmine-html.js"></script>
    <script type="text/javascript" src="lib-jasmine-2.0.3/boot.js"></script>


    <!-- include source files here... -->
    <!-- my angular and other libs scripts here -->


    <!-- include spec files here... -->
    <script src="mock/stateMock.js"></script>
    <script src="spec/unit/controllers/main.js"></script>
    <script src="spec/unit/services/survey.js"></script>

</head>

<body>
</body>

</html>

Jasmine Spec Runner v2.0.3

我应该怎么做才能使它像在控制台中一样运行?如果您对规格的引用是正确的,请提前感谢(它们位于你的runner.html下面,可能只是你需要包含你的源文件和特定于供应商的文件。这是你的源文件和我的源文件之间的唯一区别。但是,我的spec runner没有解决的一个问题是模板URL的指令。这在karma中通过karma-ng-html2js-preprocess解决sor插件,但当您使用jasmine runner时,它不会运行。这是我的一个缩写版本供参考。仅供参考,我将我的yeoman生成器更改为在添加文件时也在此文件上运行wiredep,以便自动添加所有文件。省去了很多麻烦

<html>
<head>
  <meta charset="utf-8">
  <title>Jasmine Spec Runner</title>
  <link rel="stylesheet" type="text/css" href="bower_components/jasmine/lib/jasmine-core/jasmine.css">
</head>
<body>
    <script src="bower_components/jasmine/lib/jasmine-core/jasmine.js"></script>
    <script src="bower_components/jasmine/lib/jasmine-core/jasmine-html.js"></script>
    <script src="bower_components/jasmine/lib/jasmine-core/json2.js"></script>
    <script src="bower_components/jasmine/lib/jasmine-core/boot.js"></script>
    <!-- bower:js -->
    <script src="bower_components/angular/angular.js"></script>
    ... all other bower components
    <!-- endbower -->
    <!-- devDependencies -->
    <script src="bower_components/angular-mocks/angular-mocks.js"></script>
    <!-- enddevDependencies -->
    <!-- build:js({.tmp,app}) scripts/scripts.js -->
    <script src="app/scripts/app.js"></script>
    ..all other source files
    <!-- endbuild -->
    <!-- specs -->
    <script src="test/spec/controllers/myspec.js"></script>
    <!-- endspecs -->
</body>

茉莉花跑步者
…所有其他鲍尔部件
…所有其他源文件