Получение ошибки при использовании ES6 в карме - PullRequest
0 голосов
/ 07 июня 2018

Я выполнил настройку с помощью кармы для запуска тестовых случаев.Я получаю сообщение об ошибке, если использовать любой код ES6 в тестовом файле или исходном файле.Ниже я прилагаю свою конфигурацию.пожалуйста, помогите мне.

module.exports = function (config) {
  config.set({
   
    browsers: ['PhantomJS'],
    colors: true,
    client: {
      clearContext: false
    },
    failOnEmptyTestSuite: false,
    frameworks: [
      'mocha',
      'chai'
    ],
    files: [
      'tests/test.js',
      //{pattern: 'tests/globals.js'},
      'js/**/*.js'
    ],
    preprocessors: {
      'tests/test.js': ['webpack', 'sourcemap'],
      'js/**/*.js': ['webpack'],
      'tests/**/*.js': ['webpack'],
    },
    reporters:['spec', 'coverage'],
    coverageReporter: {
      reporters: [
        { type: 'text' },
        { type: 'html', subdir: 'html' }
      ],
    },
    webpack: {
      cache: true,
      devtool: 'inline-source-map',
      module: {
        loaders: [
          {
            enforce: 'pre',
            test: /.test\.js$/,
            include: /tests/,
            exclude: /node_modules/,
            use: [{ loader: 'babel-loader' }]
          },
          {
            enforce: 'pre',
            test: /\.js$/,
            include: /js/,
            exclude: /node_modules/,
            use: [{ loader: 'istanbul-instrumenter-loader', query: { esModules: true } }]
          },

          {
            test: /\.js$/,
            include: /js/,
            exclude: /node_modules|tests/,
            use: [{ loader: 'babel-loader' }]
          },
        ],
      },
    },
  });
};

И мой файл теста

import '../js/help/help.js';
describe("CamelCase Function",()=>{
	it("the given text should be a string", () =>{
        var str  = "satya";
			testString = Utility.camelCaseConvertion(str);
		expect(testString).to.be.a("string");		
    });
    
    it("Should convert the first letters to Capital",()=>{
        expect(Utility.camelCaseConvertion("test 123test test@123 anywhereworks any")).to.equal("Test 123test Test@123 Anywhereworks Any");	
    });

    it("should not convet to camel case",()=>{
        expect(Utility.camelCaseConvertion("@anywhereworks")).to.equal("@anywhereworks");
    });
    it("should convert to camel case after space",()=>{
        expect(Utility.camelCaseConvertion("<h1>aw anywhere")).to.equal("<h1>aw Anywhere")
    });
});

Если я использую какой-либо код ES6 в help.js, то также выдает ошибку.Как я могу перенести мой источник, а также проверить с вышеупомянутой конфигурацией.

1 Ответ

0 голосов
/ 11 июня 2018

Ты заставляешь Карму запускать свои тесты в PhantomJS.PhantomJS не поддерживает большую часть ES6 и, возможно, никогда не будет, поскольку разработка была на неопределенный срок приостановлена ​​ ранее в этом году.

Если вы хотите использовать ES6 (такие вещи, как let и функции стрелок) вПризрак, вам нужно будет перенести код с чем-то вроде Babel .Я полагаю, что уже существуют некоторые плагины Кармы, такие как этот .

...