javascript - TypeScript-feil vises ikke når tester kjøres gjennom JEST med create-react-app
Som tittelen sier, når jeg skriver feil TypeScript-kode i et prosjekt satt opp med create-react-app, får jeg ingen feil i terminalen når jeg kjører testene gjennom npm test. Kanskje dette er forventet oppførsel? Ville imidlertid vært fint å få feilmeldingene for å forhindre at man skriver feil TypeScript i tester også
Eksempel på feil kode:
// App.test.tsx
it('Test of incorrect TypeScript', () => {
let aSimpleString: string = 'hello';
aSimpleString = 5;
});
P.S. Hvis du lurte: Jeg bruker TypeScript-versjonen av create-react-app gjennom: npx create-react-app my-app --typescript. Alt annet fungerer fint, og hvis jeg skriver feil TypeScript i komponentfiler gir terminalen meg beskjed
Svar #1
Testing utfører ikke typekontroll. Testene trenger heller ikke å kompilere riktig, selv om jeg ikke er sikker på hvorfor dette er, så typefeil i testene vises ikke.
Hvis du vil gjøre typetesting på testene, bruk yarn tsc med standardkonfigurasjonen. Dette vil utføre typetesting, og det har noEmit satt slik at det ikke bygger noe. Testfilene er inkludert i konfigurasjonen som standard.
Hvis du vil, kan du også oppdatere testskriptet til: tsc && react-scripts test.
Merk at dette kun vil gjøre typekontroll. Du kan også bruke eslint for koding, f.eks.
tsc && eslint --ext ts,tsx,js src && react-scripts test
