112 votes

command not found: plaisanterie

J'ai un fichier de test comme ceci: (je suis à l'aide de create-réagir-app)

import React from 'react';
import ReactDOM from 'react-dom';
import App from './components/Calculator';

import { getAction, getResult } from './actions/'

import {shallow} from 'enzyme';
import toJson from 'enzyme-to-json';

import Enzyme from 'enzyme';
import Adapter from 'enzyme-adapter-react-16';

Enzyme.configure({ adapter: new Adapter() });

it('renders without crashing', () => {
  const wrapper = shallow(<App />)
  expect(toJson(wrapper)).toMatchSnapshot();
});

it('displays the choosen operator', () => {
  const action = {
      type: 'GET_ACTION',
      operator: '+'
    };
  expect(getAction("+")).toEqual(action)
})

it('displays the typed digit', () => {
  const action = {
    type: 'GET_RESULT',
    n: 3
  };
  expect(getResult(3)).toEqual(action);
})

it('checks that the clickevent for getNumber is called',() => {
  const clickEvent = jest.fn();
  const p = shallow(<p data-n="1" onClick={clickEvent}>1</p>)
  p.simulate('click')
  expect(clickEvent).toBeCalled();
})

et un packaje.json:

{
  "name": "my-app",
  "version": "0.1.0",
  "private": true,
  "dependencies": {
    "react": "^16.2.0",
    "react-dom": "^16.2.0",
    "react-scripts": "1.1.1"
  },
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    // "test": "react-scripts test --env=jsdom",
    "test": "jest",
    "eject": "react-scripts eject"
  },
  "devDependencies": {
    "enzyme": "^3.3.0",
    "enzyme-adapter-react-16": "^1.1.1",
    "enzyme-to-json": "^3.3.3",
    "jest": "^22.4.3"
  }
}

quand je lance "plaisanterie --updateSnapshot" j'obtiens:

command not found: jest

mais la plaisanterie est installé.

enter image description here

134voto

CaptEmulation Points 1814

Jest est installé, mais il est probable que dans votre ./node_modules/.bin répertoire. Vous pouvez ajouter à votre commande ./node_modules/.bin/jest --updateSnapshot. Puisque vous avez déjà jest comme scripts commande dans votre package.json vous pouvez également l'exécuter avec npm test -- --updateSnapshot. npm ajoute automatiquement ./node_modules/.bin de votre chemin.

63voto

Siddhartha Thota Points 336

J'ai couru dans un problème similaire. Je l'ai fixée par l'installation de la plaisanterie à l'échelle mondiale.

npm install -g jest

48voto

El Aoutar Hamza Points 2473

Vous avez besoin d'exécuter de cette façon :

./node_modules/.bin/jest

ou exécutez npm test

22voto

sybozz Points 311

Installez la Plaisanterie interface de ligne de commande (Jest CLI):

npm install --save-dev jest-cli

Ensuite, exécutez la plaisanterie de commande. De travail pour moi dans une instance de linux par docker sur Windows 10.

2voto

аlex dykyі Points 2460

utilisez simplement la commande

npm test ou npm t

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X