Karma&当使用“基础”这个词时,茉莉花的行为很怪异。

时间:2016-02-13 03:40:36

标签: jasmine phantomjs karma-runner karma-jasmine

我来这里是为了寻求帮助,因为我无法找到解决方案,而且我花了很多时间在这上面。

问题是业力+茉莉花测试中的一个奇怪的行为,最初我认为问题出在AngularJs代码中,但是通过剥离剥离我达到了没有其他东西可以去除的问题,而且问题是100%没有在角度。

我使用的实际代码是:

test.js:

'use strict';

describe('Unit tests suite', function () {
    it('test', function () {
        expect('base').toEqual('');
    });
});

karma.conf.js:

module.exports = function (config) {
    config.set({
        basePath: '',
        frameworks: ['jasmine'],
        files: ['*.js'],
        exclude: [],
        preprocessors: {},
        reporters: ['progress'],
        port: 9876,
        colors: true,
        logLevel: config.LOG_INFO,
        autoWatch: true,
        browsers: ['PhantomJS'],
        singleRun: false,
    })
}

绝对没有别的。该测试的结果是:

13 02 2016 04:32:39.559:WARN [karma]: No captured browser, open http://localhost:9876/
13 02 2016 04:32:39.571:INFO [karma]: Karma v0.13.15 server started at http://localhost:9876/
13 02 2016 04:32:39.578:INFO [launcher]: Starting browser PhantomJS
13 02 2016 04:32:41.248:INFO [PhantomJS 2.1.1 (Mac OS X 0.0.0)]: Connected on socket HiC4WW_4235Nlf0rAAAA with id 54292207
PhantomJS 2.1.1 (Mac OS X 0.0.0) Unit tests suite test FAILED
    Expected '/Users/Gianmarco/Desktop/test' to equal ''.
    /Users/Gianmarco/Desktop/test/test.js:5:31
PhantomJS 2.1.1 (Mac OS X 0.0.0): Executed 1 of 1 (1 FAILED) ERROR (0.003 secs / 0.003 secs)

正如你所看到的那样,#34; base"正在使用文件夹的路径进行更改。这让我疯了,我无法弄清楚为什么会这样做。

我尝试使用MacOSX和Ubuntu 14.04,结果是一样的。

准备文件夹我做了这个:

mkdir test
cd test
npm install jasmine-core karma-cli karma-jasmine karma-phantomjs-launcher phantomjs-prebuilt --save
karma init
karma start

当然,我的系统前段时间有npm install karma-cli -g

版本是:

jasmine-core@2.4.1
karma@0.13.21
karma-cli@0.1.2
karma-jasmine@0.3.7
karma-phantomjs-launcher@1.0.0
phantomjs-prebuilt@2.1.4

使用单词absolute获取相同的行为,将其替换为空字符串

1 个答案:

答案 0 :(得分:2)

我相信它是karma(progress)中默认报告者的问题,看起来URL_REGEX匹配base和absolute,因为正则表达式的所有其余部分都是可选的。

var URL_REGEXP = new RegExp('(?:https?:\\/\\/[^\\/]*)?\\/?' +
    '(base|absolute)' + // prefix
    '((?:[A-z]\\:)?[^\\?\\s\\:]*)' + // path
    '(\\?\\w*)?' + // sha
    '(\\:(\\d+))?' + // line
    '(\\:(\\d+))?' + // column
    '', 'g')

https://github.com/karma-runner/karma/blob/684ab1838c6ad7127df2f1785c1f56520298cd6b/lib/reporter.js#L25