Chutzpah捡起它不应该的文件

时间:2018-08-09 09:54:48

标签: javascript visual-studio unit-testing jasmine

我正在尝试并且无法让chutzpah与我的项目一起使用,它会不断拾取与剑道相关的我不想测试的文件。我要执行BodyRequirements测试,该测试使用需要满足的依赖性

  

错误:ReferenceError:找不到变量:$在全局代码中   文件:/// C:/dev/Repos/main/Source/Prescribing/PrescribingMVC/Scripts/kendo/2018.1.221/kendo.all-vsdoc.js   (第38行)   运行:C:\ dev \ Repos \ main \ Source \ Prescribing \ PrescribingMVC \ Scripts \ kendo \ 2018.1.221 \ kendo.all-vsdoc.js   ------测试开始:文件:C:\ dev \ Repos \ main \ Source \ Prescribing \ PrescribingMVC \ Scripts \ kendo \ 2018.1.221 \ kendo.all-vsdoc.js   ------通过了0次,失败了0次,总计0次(chutzpah)。

     

------测试已开始:文件:C:\ dev \ Repos \ main \ Source \ Prescribing \ PrescribingMVC \ Tests \ BodyMeasurements.spec.js   ------错误:ReferenceError:找不到变量:$在文件:/// C:/dev/Repos/main/Source/Prescribing/PrescribingMVC/Scripts/kendo/2018.1.221/kendo的全局代码中.mobile-vsdoc.js   (第38行)   运行:C:\ dev \ Repos \ main \ Source \ Prescribing \ PrescribingMVC \ Scripts \ kendo \ 2018.1.221 \ kendo.mobile-vsdoc.js   ------测试已开始:文件:C:\ dev \ Repos \ main \ Source \ Prescribing \ PrescribingMVC \ Scripts \ kendo \ 2018.1.221 \ kendo.mobile-vsdoc.js   ------通过了0次,失败了0次,总计0次(chutzpah)。

     

------测试开始:文件:C:\ dev \ Repos \ main \ Source \ Prescribing \ PrescribingMVC \ Tests \ Test.spec.js   ------ 1个通过,0个失败,总计1个(chutzpah)。

     

通过7次,失败0次,总计7次(chutzpah)。

     

===========总测试次数:8次通过,0次失败,8次===========

Project
   chuztpah.json
   /Scripts/
      lodash.js
      moment.js
      jquery-3.3.1.js
      BodyMeasurements.js
      require.js
      Kendo/
         2018.1.221/
              many kendo files
   /Tests/
      chuztpah.json
      BodyMeasurements.spec.js
      require.config.js
      Test.spec.js

chuztpah.json

 {
      "InheritFromParent": true,
      "Framework": "jasmine",
      "TestHarnessReferenceMode": "AMD",
      "CodeCoverageExcludes": [ ".config.js", ".module.js", ".spec.js", "files.js", "node_modules", "*-vsdoc.js" ],
      "TestFileTimeout": 10000, // <-- avoid Timeout error
      "EnableCodeCoverage": false, // <-- get a bad performance if true
      "EnableTracing": true,
      "AMDBaseUrl": "../Scripts",
      "References": [
        {
          "Path": "../Scripts/require.js"
        },
        {
          "Path": "require.config.js"
        }
      ],
      "Tests": [
        {
          "Includes": [ "*.spec.js" ]
        }
      ]
    }

require.config.js

// Requirejs Configuration Options
require.config({
    // to set the default folder
    baseUrl: "/Scripts",
    // paths: maps ids with paths (no extension)
    paths: {    
        'jquery': ['jquery-3.3.1'],
        'lodash': ['lodash'],
        'moment': ['moment'],
        'BodyMeasurements': ['BodyMeasurements']
    }    
});

require(['jquery'], function ($) {
    return $;
});

bodymeasurements.spec.js

'use strict';
/* text */
define(["require", "BodyMeasurements", "lodash"], function (require, body, lodash) {
    {
        describe('Calculate Body Surface Area', function () {
            beforeEach(function () {

            });

            it("should return body surface area for mosteller 1", function () {
                var result = body.CalculateBodySurfaceArea(61, 171, "Mosteller");
                expect(result).toBe(1.7);
            });

            it("should return body surface area for mosteller 2", function () {
                var result = body.CalculateBodySurfaceArea(91, 157, "Mosteller");
                expect(result).toBe(1.99);
            });

            it("should return body surface area for DuBois", function () {
                var result = body.CalculateBodySurfaceArea(40, 80, "DuBois");
                expect(result).toBe(0.83);
            });

        });

        describe("Calculate Lean Body weight", function () {
            beforeEach(function () {
            });

            it("return zero if no required fields", function () {
                var result = body.CalculateLeanBodyweight(0, 0, undefined, undefined);
                expect(result).toBe(0);
            });

            it("return result for hulme for a man", function () {
                var result = body.CalculateLeanBodyweight(60, 180, "Male", "Hume");
                expect(lodash.round(result, 1)).toBe(51.2);
            });

            it("return result for james for a man", function () {
                var result = body.CalculateLeanBodyweight(60, 180, "Male", "James");
                expect(lodash.round(result, 1)).toBe(51.8);
            });

            it("return result for james as a women", function () {
                var result = body.CalculateLeanBodyweight(80, 157, "Female", "Hume");
                expect(lodash.round(result, 1)).toBe(46);
            });
        });
    }
});

为什么chutzpah会尝试测试kendo.mobile-vsdoc.js和kendo.all-vsdoc.js?它们没有被列为测试,也没有与.spec.js模式匹配。 我试过排除* -vsdoc.js,但这没什么区别。

0 个答案:

没有答案