【问题标题】:webpack - karma unit test throws errorwebpack - 业力单元测试抛出错误
【发布时间】:2016-10-05 04:02:43
【问题描述】:

我正在使用带有 karma-mocha-chai 的 webpack 对我的 Angular 项目进行单元测试。

在设置测试框架时我面临以下错误:

karma start
05 06 2016 18:29:04.739:ERROR [config]: Invalid config file!
  TypeError: Path must be a string. Received { vendor: [ 'jquery', 'angular' ],
  bundle: [ 'babel-polyfill', './src/app.js' ] }
at assertPath (path.js:8:11)
at Object.posix.resolve (path.js:426:5)
at Object.<anonymous> (/Users/samirshah/Desktop/nuskin-chai/karma.conf.js:3:18)
at Module._compile (module.js:409:26)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Module.require (module.js:353:17)
at require (internal/module.js:12:17)
at Object.parseConfig (/usr/local/lib/node_modules/karma/lib/config.js:284:22)
at new Server (/usr/local/lib/node_modules/karma/lib/server.js:57:20)
at Object.exports.run (/usr/local/lib/node_modules/karma/lib/cli.js:243:7)
at Object.<anonymous> (/usr/local/lib/node_modules/karma/bin/karma:3:23)
at Module._compile (module.js:409:26)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Function.Module.runMain (module.js:441:10)
at startup (node.js:139:18)
at node.js:968:3

weboack.config.js

    entry: {
        vendor: ["jquery", "angular"],
        bundle: ['babel-polyfill', './src/app.js'],
    },

package.json

"scripts": {
    "dev": "webpack-dev-server --inline --port 3000 --content-base public/",
    "build": "webpack",
    "lint": "eslint src/ ; true",
    "test": "NODE_ENV = testkarma start"
},

构建和开发工作正常,但单元测试抛出错误。我检查了我的 karma.conf.js 文件没有问题。

【问题讨论】:

    标签: angularjs unit-testing webpack karma-runner karma-mocha


    【解决方案1】:

    我有同样的问题。在我的业力配置文件中,我有这样的东西:

    var path = require('path');
    var webpackConfig = require('./webpack.config');
    var entry = path.resolve(webpackConfig.context, webpackConfig.entry);
    ...
    

    问题是我的 webpack.config.js 文件中的 webpackConfig.entry 是一个对象不是字符串(因此 “路径必须是字符串” 消息)。

    希望对你有帮助,干杯!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-06-07
      • 1970-01-01
      • 2016-06-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-01
      • 2018-02-14
      相关资源
      最近更新 更多