标签: isparta

Vue单元测试错误:vuex需要在此浏览器中使用Promise polyfill

我创建使用项目vue-cli和补充vuex,并vue-router在里面.我正在尝试为它设置单元测试,但我收到了以下错误.没有Vuex,它曾经工作过.

PhantomJS 2.1.1(Mac OS X 0.0.0)错误

错误:[vuex] vuex需要在此浏览器中使用Promise polyfill.

在webpack:///~/vuex/dist/vuex.js:145:0 < - index.js:9871

以下是相关的包版本:

"babel-core": "^6.0.0",
"babel-eslint": "^7.0.0",
"babel-loader": "^6.0.0",
"vue": "^2.1.0",
"vue-router": "^2.0.3",
"vuex": "^2.0.0",
"vuex-router-sync": "^3.0.0"
"karma": "^1.3.0",
"karma-coverage": "^1.1.1",
"karma-mocha": "^1.2.0",
"karma-phantomjs-launcher": "^1.0.0",
"karma-sinon-chai": "^1.2.0",
"karma-sourcemap-loader": "^0.3.7",
"karma-spec-reporter": "0.0.26",
"karma-webpack": "^1.7.0",
"webpack": "^1.13.2",
"webpack-dev-middleware": "^1.8.3",
"webpack-hot-middleware": "^2.12.2",
"webpack-merge": "^0.14.1"
Run Code Online (Sandbox Code Playgroud)

以下是karma.conf.js:

// This is a karma config file. For more details see
//   http://karma-runner.github.io/0.13/config/configuration-file.html
// we are also using it with karma-webpack …
Run Code Online (Sandbox Code Playgroud)

javascript unit-testing karma-runner vue.js isparta

15
推荐指数
2
解决办法
6858
查看次数

错误:Bootstrap的JavaScript需要jQuery,使用Webpack

我是webpack的新手,但我开始在我的一个项目中使用它来了解它.

我想在引导程序中使用jQuery,但是,当我启动应用程序时,我收到以下错误:

bootstrap.min.js?5802:6未捕获错误:Bootstrap的JavaScript需要jQuery

在我的webpack配置中,我定义了两个入口点,一个用于项目库,一个用于外部源,称为供应商,如jQuery,Bootstrap等.

在供应商中,我已经在jQuery库之后定义了Bootstrap库,但我无法摆脱错误.我缺少的任何线索?

这是我的webapp配置:

import webpack from 'webpack';
import HtmlWebpackPlugin from 'html-webpack-plugin';
import autoprefixer from 'autoprefixer';
let node_dir = __dirname + '/node_modules';

export default {
  resolve: {
    extensions: ['', '.js', '.jsx'],
    alias: {
      'jquery': node_dir + '/jquery/dist/jquery.js',
      'jquery-validation': node_dir + '/jquery-validation/dist/jquery.validate.js',
      'bootstrap': node_dir + '/bootstrap/dist/js/bootstrap.min.js'
    }
  },
  debug: true,
  devtool: 'cheap-module-eval-source-map', // more info:https://webpack.github.io/docs/build-performance.html#sourcemaps and https://webpack.github.io/docs/configuration.html#devtool
  noInfo: true, // set to false to see a list of every file being bundled.

  entry: {
    // must be first entry …
Run Code Online (Sandbox Code Playgroud)

javascript jquery twitter-bootstrap webpack isparta

10
推荐指数
2
解决办法
1万
查看次数

如何让Karify,Babel和Coverage在Karma中一起工作?

我越来越厌倦试图让节点库一起正常工作,但这是工作的一部分,所以这里就是这样.

我有一个用于浏览器的ES6应用程序.我的文件有一组单元测试,当我的应用程序是用ES5编写时,我正在调试.我使用Browserify处理导入/导出模块并捆绑我的发行版.这在浏览器中运行应用程序时工作正常.我可以成功浏览源文件和规范文件并运行测试,测试通过.我非常接近这个工作.

唯一的问题是报道.我最接近的是显示karma-browserify生成的文件的覆盖范围,每个文件看起来像这样:

require('/absolute/path/to/the/corresponding/file.js');
Run Code Online (Sandbox Code Playgroud)

并且所有文件的覆盖率显然为100%,因为每个文件只有一行.

这是我的karma.conf.js:

import babelify from 'babelify';
import isparta  from 'isparta';
import paths    from './paths';

var normalizeBrowserName = (browser) => browser.toLowerCase().split(/[ /-]/)[0];

export default function(config) {
    config.set({
        basePath: '..',
        browsers: ['PhantomJS'],
        frameworks: ['browserify', 'jasmine'],
        files: paths.test.files,
        preprocessors: {
            'app/**/*.js': ['browserify', 'sourcemap', 'coverage'],
            [paths.test.testFiles]: ['babel'],
        },
        plugins: [
            'karma-babel-preprocessor',
            'karma-browserify',
            'karma-coverage',
            'karma-jasmine',
            'karma-junit-reporter',
            'karma-phantomjs-launcher',
            'karma-sourcemap-loader',
        ],
        autoWatch: false,
        colors: false,
        loggers: [{ type: 'console' }],
        port: 9876,
        reporters: ['progress', 'dots', 'junit', 'coverage'],
        junitReporter: {
            outputFile: paths.test.resultsOut,
            suite: '', …
Run Code Online (Sandbox Code Playgroud)

code-coverage browserify karma-runner babeljs isparta

8
推荐指数
1
解决办法
3077
查看次数

Karma-Coverage报告显示代码覆盖(显然未涵盖)

我试图生成HTML覆盖率报告,但它不包含我期望的输出.也许我在这里错了,但它应该只显示从spec文件中调用的那些行和方法,对吧?

不知怎的,它没有.

更新:

我创建了一个存储库来提供一个工作示例,概述了问题:

https://github.com/gearsdigital/stunning-octo-train

这是我的(测试)项目设置.如果需要,我可以将它推送到GitHub仓库,因为我不知道如何设置JSFiddle来运行此代码.

TL; DR

有一个生成HTML覆盖率报告的过程.此报告显示所涵盖的代码,由于没有可用的测试,因此显然没有涵盖.

karma.conf.js:

var webpack = require('webpack');
var path = require('path');

// Reference webpack.config.js, don't repeat it!
var webpackConfig = require('./webpack.config.js');

// The entry point from the referenced Webpack configuration has to be
// removed or tests will fail in weird and inscrutable ways.
// Easy enough, just define an empty entry object (null won't work).
webpackConfig.entry = {};
webpackConfig.module = {
    preLoaders: [
        {
            test: /\.js$/,
            // files within these directories should …
Run Code Online (Sandbox Code Playgroud)

javascript webpack karma-coverage babeljs isparta

6
推荐指数
1
解决办法
1783
查看次数

Sourcemap + istanbul/isparta webpack 的代码覆盖率 + babel (for es6) + mocha (+karma)

我在https://github.com/danielbush/webpack-babel-karma-sourcemap-coverage有一个测试项目

\n\n

它由两个简单的源文件组成src/,其中一个有一个故意错误(src/lib2.js )。

\n\n

我想使用 babel 进行 webpack 和从 ES6 到 ES5 的转译,并使用 Karma 在此包上运行 Mocha 测试。

\n\n

我已经添加了源映射并对此进行了测试,以便我可以看到原始文件的行号。

\n\n

对我来说,堆栈跟踪如下所示:

\n\n
21 02 2016 16:03:15.445:INFO [karma]: Karma v0.13.21 server started at http://localhost:9876/\n21 02 2016 16:03:15.451:INFO [launcher]: Starting browser Chrome\n21 02 2016 16:03:16.551:INFO [Chrome 48.0.2564 (Linux 0.0.0)]: Connected on socket /#yRS32ons0_2HGhrwAAAA with id 3072946\n\nSTART:\n  lib1\n    \xe2\x9c\x96 should return 1\n\nFinished in 0.015 secs / 0.001 secs\n\nSUMMARY:\n\xe2\x9c\x94 0 tests completed\n\xe2\x9c\x96 1 test failed\n\nFAILED TESTS:\n  lib1\n    \xe2\x9c\x96 …
Run Code Online (Sandbox Code Playgroud)

javascript istanbul webpack karma-coverage isparta

5
推荐指数
1
解决办法
3896
查看次数

如何防止 npm 安装后出现 Webpack 错误?

我当时正在做一个项目,一切都很顺利,直到我做到了npm install

\n\n

然后,Webpack 抛出以下错误:

\n\n
new ForkCheckerPlugin(),\n        ^\nTypeError: ForkCheckerPlugin is not a constructor\n    at makeWebpackConfig (/home/nsanz/Documentos/git/tachology/webpack.make.js:252:9)\n    at Object.exports.default (/home/nsanz/Documentos/git/tachology/server/config/express.js:86:27)\n    at Object.<anonymous> (/home/nsanz/Documentos/git/tachology/server/app.js:28:1)\n    at Module._compile (module.js:570:32)\n    at loader (/home/nsanz/Documentos/git/tachology/node_modules/babel-register/lib/node.js:144:5)\n    at Object.require.extensions.(anonymous function) [as .js] (/home/nsanz/Documentos/git/tachology/node_modules/babel-register/lib/node.js:154:7)\n    at Module.load (module.js:487:32)\n    at tryModuleLoad (module.js:446:12)\n    at Function.Module._load (module.js:438:3)\n    at Module.require (module.js:497:17)\n    at require (internal/module.js:20:19)\n    at Object.<anonymous> (/home/nsanz/Documentos/git/tachology/server/index.js:12:28)\n    at Module._compile (module.js:570:32)\n    at Object.Module._extensions..js (module.js:579:10)\n    at Module.load (module.js:487:32)\n    at tryModuleLoad (module.js:446:12)\n    at Function.Module._load (module.js:438:3)\n    at Module.runMain (module.js:604:10)\n    at run (bootstrap_node.js:389:7)\n    at startup (bootstrap_node.js:149:9)\n    at …
Run Code Online (Sandbox Code Playgroud)

node.js webpack angular-fullstack isparta

5
推荐指数
1
解决办法
3万
查看次数

为什么代码覆盖率在伊斯坦布尔不起作用?

我正在尝试为我的 Node 项目运行代码覆盖率,但由于某种原因它不起作用。我正在使用 chai+mocha+istanbul,也尝试过 nyc。我的代码同时具有 ES5 和 ES6 组件,并且我为此使用编译器标签。测试运行良好,但代码覆盖率没有显示任何内容。

11 passing (15ms)
    ----------|----------|----------|----------|----------|----------------|
    File      |  % Stmts | % Branch |  % Funcs |  % Lines |Uncovered Lines |
    ----------|----------|----------|----------|----------|----------------|
    All files |  Unknown |  Unknown |  Unknown |  Unknown |                |
    ----------|----------|----------|----------|----------|----------------|
Run Code Online (Sandbox Code Playgroud)

我的 package.json 的相关部分:

"test": "mocha test/app.test.js --compilers js:babel-core/register",
"test:cover": "nyc npm t",
"coverage": "babel-node ./node_modules/.bin/isparta cover mocha -- --compilers js:babel-register",
"cover": "cross-env NODE_ENV=test nyc --reporter=lcov --reporter=text mocha --compilers js:babel-register test/*.js"
Run Code Online (Sandbox Code Playgroud)

正如您可能会发现的那样,我尝试了不同的组合和替代方案,但似乎没有什么对我有用。

开发依赖项的相关部分:

    "babel-cli": "^6.16.0",
    "babel-core": "^6.26.0",
    "babel-loader": …
Run Code Online (Sandbox Code Playgroud)

javascript code-coverage node.js istanbul isparta

5
推荐指数
0
解决办法
1001
查看次数