Karma Webpack-错误:无法找到模块"./test/utilities.js" [英] Karma Webpack - Error: Cannot find module "./test/utilities.js"

查看:49
本文介绍了Karma Webpack-错误:无法找到模块"./test/utilities.js"的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用Karma Webpack进行项目的单元测试.

I'm using Karma Webpack for the unit tests of a project.

运行karma start时,出现此错误:

Error: Cannot find module "./test/utilities.js" at /myproject/test/campaign.test.js:49 <- webpack:///test/campaign.test.js:3:0

这是我的文件campaign_test.js的内容:

"use strict";

var utilities = require('./test/utilities.js');

describe(" campaign unit tests", function () {
  var error = null;
  var user = null;

  utilities.initParse();  
});

这是karma.conf.js文件:

var webpack = require("webpack"),
path = require("path");

// Karma configuration
// Generated on Mon May 11 2015 14:13:57 GMT-0600 (MDT)

module.exports = function(config) {
  config.set({
    basePath: "test",
    frameworks: ["jasmine"],
    files: [
        "**/*.js"
    ],
    preprocessors: {
        "**/*.js": ["webpack",  "sourcemap"]
    },
    webpack: {
        plugins: [
            new webpack.ResolverPlugin([
                new webpack.ResolverPlugin.DirectoryDescriptionFilePlugin("bower.json", ["main"])
            ])
        ],
        resolve: {
            root: [path.join(__dirname, "./bower_components"), path.join(__dirname, "./src")]
        },
        devtool: "inline-source-map",
        resolve: {
            alias: {
                app: path.join(__dirname, 'test')
            }
        }
    },
    webpackMiddleware: {
        progress: false,
        stats: false,
        debug: true,
        noInfo: true,
        silent: true 
    },
    plugins: [
        require("karma-webpack"),
        require("karma-jasmine"),
        require("karma-phantomjs-launcher"),
        require("karma-sourcemap-loader"),
    ],
    reporters: ["dots"],
    port: 9876,
    colors: true,
    logLevel: config.LOG_INFO,
    autoWatch: true,
    browsers: ["PhantomJS"],
    singleRun: false
  });
};

这是我的项目的结构:

package.json
karma.conf.js
test/
    campaign.test.js
    game.test.js
    user.test.js
    utilities.test.js
    utilities.js

有什么建议吗?

推荐答案

依赖关系路径是相对于当前脚本的.因此,只需重写您的require语句:

Dependencies paths are relative to current script. So just rewrite your require statement:

var utilities = require('./utilities.js');

这篇关于Karma Webpack-错误:无法找到模块"./test/utilities.js"的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆