Note du traducteur
C'est la traduction du fichier readme.md. Voici un lien vers les différences avec le master de AVA (Si en cliquant sur le lien, vous ne trouvez pas le fichier readme.md
parmi les fichiers modifiés, vous pouvez donc en déduire que la traduction est à jour).
Les tests peuvent être un frein. AVA vous aide à le faire. AVA est un lanceur de tests pour Node.js avec une API concise, une sortie d'erreur détaillée, de nouvelles fonctionnalités de langage et une isolation des processus qui vous permet d'écrire des tests plus efficacement. Donc vous pouvez embarquer du code plus impressionnant. 🚀
Suivez le compte Twitter de AVA pour les mises à jour.
Lisez notre guide de contribution si vous souhaitez contribuer (issues / PRs / etc).
Traductions : Español, Français, Italiano, 日本語, 한국어, Português, Русский, 简体中文
- Minimal et rapide
- Syntaxe de test simple
- Exécution des tests simultanément
- Application de l'écriture des tests atomiques
- Aucunes globales implicites
- Inclus les définitions des types pour TypeScript
- Magic assert
- Environnement isolé pour chaque fichier de test
- Écriture de vos tests en utilisant la dernière syntaxe de JavaScript
- Prise en charge des promesses
- Prise en charge des fonctions asynchrones
- Prise en charge d'Observable
- Messages d'assertions améliorés
- Test automatiquement en parallèle dans CI
- Reporter de TAP
Pour installer et configurer AVA, exécutez :
npm init ava
Votre package.json
ressemblera alors à ceci (version exacte) :
{
"name": "awesome-package",
"scripts": {
"test": "ava"
},
"devDependencies": {
"ava": "^1.0.0"
}
}
Ou si vous préférez utiliser Yarn :
yarn add ava --dev
Sinon, vous pouvez installer manuellement ava
:
npm install --save-dev ava
N'oubliez pas de configurer le script test
dans votre package.json
comme indiqué ci-dessus.
Créez un fichier nommé test.js
dans le répertoire racine du projet :
const test = require('ava');
test('foo', t => {
t.pass();
});
test('bar', async t => {
const bar = Promise.resolve('bar');
t.is(await bar, 'bar');
});
npm test
Ou avec npx
:
npx ava
Exécutez avec l'option --watch
pour activé le mode watch de AVA.
npx ava --watch
AVA prend en charge la dernière version de toute version majeure prise en charge par Node.js. Lisez la suite dans notre déclaration de support.
AVA ajoute les extraits de code et les différences pour les valeurs réelles et attendues. Si les valeurs dans l'assertion sont des objets ou des tableaux, seule la différence est affichée, tout ce qui ne concerne pas le sujet est enlevé, pour se concentrer uniquement sur le problème. La différence est aussi mise en évidence ! Si vous comparez des strings, à la fois sur une ou plusieurs lignes, AVA affiche un autre type de sortie, mettant en évidence les caractères supplémentaires ou manquants.
AVA supprime automatiquement les lignes sans rapport dans la stack trace, cela permet de trouver la source d'une erreur plus rapidement, comme présenté ci-dessous.
AVA détecte automatiquement si votre environnement CI prend en charge les builds en parallèle. Chaque build exécutera un sous-ensemble de tous les fichiers de test, tout en veillant à ce que tous les tests soient exécutés. Consultez le package ci-parallel-vars
pour visualiser la liste des environnements CI pris en charge.
Veuillez consulter les fichiers dans le répertoire docs
:
- Ecriture des tests
- Contexte d'exécution
- Assertions
- Test d'instantané
- Ligne de commande (CLI)
- Configuration
- Timeouts des tests
Nous avons une liste croissante de pièges classiques que vous pouvez rencontrer lors de l'utilisation AVA. Si vous rencontrez des problèmes que vous jugez habituels, commentez les dans cette issue.
- Configuration de test
- Couverture de code
- Mode watch
- Tester un endpoint
- Quand utiliser
t.plan()
? - Tests de navigateur
- TypeScript
- Flow
- Configuration de Babel
- Utilisation des modules ES
- Passer des arguments à vos fichiers de test
- Tester les composants React
- Tester les composants Vue.js
- JSPM et SystemJS
- Débogage des tests avec Chrome DevTools
- Débogage des tests avec VSCode
- Débogage des tests avec WebStorm
- Tests d'intégration isolés de MongoDB
- Test d'applications Web à l'aide de Puppeteer
Mocha vous oblige à utiliser les globales implicites comme describe
et it
avec l'interface par défaut (que la plupart des gens utilisent). Il est pas très opiniâtre et exécute des tests en série sans isolation du processus, ce qui le rend lent.
Tape et node-tap sont bons. AVA est fortement inspiré par leur syntaxe. Tous les deux exécutent les tests en série. La restitution de TAP n'est pas facile à lire donc vous avez toujours besoin de l'aide d'un "reporter" tap.
Au contraire, AVA est très opiniâtre et exécute les tests en simultané, avec des processus distincts pour chaque fichier de test. Son "reporter" par défaut est agréable à regarder et pourtant AVA soutient encore la restitution de TAP à travers une option du CLI.
AVA, pas Ava ni ava. Prononcez /ˈeɪvə/
: eil (orteil, oreiller) V (vie, avoir) A (matin, avoir).
C'est la galaxie d'Andromède..
La simultanéité n'est pas du parallélisme. Il permet le parallélisme..
- eslint-plugin-ava - Règles de Lint pour les tests AVA
- sublime-ava - Snippets pour les tests AVA
- atom-ava - Snippets pour les tests AVA
- vscode-ava - Snippets pour les tests AVA
- gulp-ava - Exécutez les tests avec gulp
- grunt-ava - Exécutez les tests avec grunt
- Plus…
Mark Wubben | Sindre Sorhus | Vadim Demedes |