Команда тестирования npm не запущена? - PullRequest
0 голосов
/ 20 января 2019

Привет всем, я новичок в nodejs. Я хочу проверить некоторые базовые функции в своем коде. Я использую JEST среду тестирования. В командной строке я использовал npm test Я не мог проверить мой код, который он показывает нпм ERR! Тест не пройден. Кто-нибудь может решить эту проблему? Заранее спасибо ...

lib.test.js:

const lib=require('../lib.js');


describe('absolute',()=>{

    it('It should return positive number if given number is positive',()=>{
        const result=lib.absolute(1);
        expect(result).toBe(1);
    });
    
    it('It should return positive number if given number is negative',()=>{
        const result=lib.absolute(-1);
        expect(result).toBe(1);
    })
    
    it('It should return zero if given number is zero',()=>{
        const result=lib.absolute(0);
        expect(result).toBe(1);
    });

});



lib.js:

// Testing numbers 
module.exports.absolute = function(number) {
  if (number > 0) return number; 
  if (number < 0) return -number; 
  return 0; 
}


package.json:

{
  "name": "testing-demo",
  "version": "1.0.0",
  "description": "",
  "main": "db.js",
  "directories": {
    "test": "tests"
  },
  "dependencies": {},
  "devDependencies": {
    "jest": "^22.2.2"
  },
  "scripts": {
    "test": "jest"
  },
  "keywords": [],
  "author": "",
  "license": "ISC"
}

1 Ответ

0 голосов
/ 21 января 2019

Я предполагаю, что вы видите ошибку

SecurityError: localStorage is not available for opaque origins


Стандартное тестовое окружение для Jest похоже на браузерсреда, предоставляемая jsdom, которая требуется для тестирования кода, такого как приложения React, предназначенные для запуска в браузере.

Если вы собираетесь использовать jsdom в качестве тестовой среды, тогда вам потребуется установить testURL в Jest конфигурации , в противном случае вы получите ошибку, показанную выше.

Если ваш код предназначен для работы на node и вам не нужен браузерподобно среде, тогда вы можете установить для своей тестовой среды значение node.

Самый простой способ сделать это в вашем случае - передать его в качестве аргумента командной строки от до jest вваш package.json:

"scripts": {
  "test": "jest --env=node"
},
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...