|
1 |
| -# Choosing a test runner |
| 1 | +# Choisir un lanceur de tests |
2 | 2 |
|
3 |
| -A test runner is a program that runs tests. |
| 3 | +Un lanceur de tests est un programme qui lance des tests (et oui !). |
4 | 4 |
|
5 |
| -There are many popular JavaScript test runners, and `vue-test-utils` works with all of them. It's test runner agnostic. |
| 5 | +Il y a un nombre conséquent de lanceurs de tests JavaScript et `vue-test-utils` fonctionne avec tous. `vue-test-utils` est agnostique en termne de lanceurs de tests. |
6 | 6 |
|
7 |
| -There are a few things to consider when choosing a test runner though: feature set, performance, and support for single-file component (SFC) pre-compilation. After carefully comparing existing libraries, here are two test runners that we recommend: |
| 7 | +Il y a tout de même plusieurs choses à considérer afin de choisir un lanceur de tests : variété des fonctionnalités, performance et support de la précompilation des composants monofichiers. Après avoir soigneusement analysé et comparé les bibliothèques, il y a deux lanceurs de tests que nous recommandons : |
8 | 8 |
|
9 |
| -- [Jest](https://facebook.github.io/jest/docs/en/getting-started.html#content) is the most fully featured test runner. It requires the least configuration, sets up JSDOM by default, provides built-in assertions, and has a great command line user experience. However, you will need a preprocessor to be able to import SFC components in your tests. We have created the `jest-vue` preprocessor which can handle most common SFC features, but it currently does not have 100% feature parity with `vue-loader`. |
| 9 | +- [Jest](https://facebook.github.io/jest/docs/en/getting-started.html#content) est le lanceur de test le plus complet en termes de fonctionnalités. Il requiert une configuration minimale, installe JSDOM par défaut, fournit des assertions prêtes à l'utilisation et a une très bonne interface en ligne de commandes. Cependant, vous allez avoir besoin d'un préprocesseur afin d'être capable d'importer les composants monofichiers dans vos tests. On a créé le préprocesseur `jest-vue` qui peut gérer les fonctionnalités communes des composants monofichiers. Il n'a cependant pas encore autant de fonctionnalités que vue-loader. |
10 | 10 |
|
11 |
| -- [mocha-webpack](https://github.com/zinserjan/mocha-webpack) is a wrapper around webpack + Mocha, but with a more streamlined interface and watch mode. The benefits of this setup is that we can get complete SFC support via webpack + `vue-loader`, but it requires more configuration upfront. |
| 11 | +- [mocha-webpack](https://github.com/zinserjan/mocha-webpack) est une surcouche de webpack + Mocha avec une expérience simplifiée et un mode de surveillance. Les bénéfices de cette installation sont que l'on peut avoir le support complet des composants monofichiers via webpack + `vue-loader`. Il y a cependant plus de configurations à réaliser. |
12 | 12 |
|
13 |
| -## Browser Environment |
| 13 | +## Environnement du navigateur |
14 | 14 |
|
15 |
| -`vue-test-utils` relies on a browser environment. Technically you can run it in a real browser, but it's not recommended due to the complexity of launching real browsers on different platforms. Instead, we recommend running the tests in Node.js with a virtual browser environment using [JSDOM](https://github.com/tmpvar/jsdom). |
| 15 | +`vue-test-utils` se fie à un environnement de navigateur. Techniquement, vous pouvez le lancer dans un vrai navigateur, mais cela n'est pas recommandé dû à la complexité de lancer de réels navigateurs sur différentes plateformes. Au lieu de cela, nous recommandons de lancer les tests sous Node.js avec un environnement virtuel de navigateur en utilisant le [JSDOM](https://github.com/tmpvar/jsdom). |
16 | 16 |
|
17 |
| -The Jest test runner sets up JSDOM automatically. For other test runners, you can manually set up JSDOM for the tests using [jsdom-global](https://github.com/rstacruz/jsdom-global) in the entry for your tests: |
| 17 | +Le lanceur de tests Jest installe automatiquement JSDOM. Pour d'autres lanceurs de tests, il faut le faire manuellement en utilisant [jsdom-global](https://github.com/rstacruz/jsdom-global) dans la déclaration de vos tests : |
18 | 18 |
|
19 | 19 | ``` bash
|
20 | 20 | npm install --save-dev jsdom jsdom-global
|
21 | 21 | ```
|
22 | 22 | ---
|
23 | 23 | ``` js
|
24 |
| -// in test setup / entry |
| 24 | +// dans test setup / entry |
25 | 25 | require('jsdom-global')()
|
26 | 26 | ```
|
27 | 27 |
|
28 |
| -## Testing Single-File Components |
| 28 | +## Tester des composants monofichiers |
29 | 29 |
|
30 |
| -Single-file Vue components (SFCs) require pre-compilation before they can be run in Node or in the browser. There are two recommended ways to perform the compilation: with a Jest preprocessor, or directly use webpack. |
| 30 | +Les composants Vue monofichiers nécessitent une étape de précompilation avant qu'ils soient lancés dans Node.js ou sur un navigateur. Il existe deux méthodes recommandées pour réaliser la compilation : avec un préprocesseur Jest ou directement en utilisant webpack. |
31 | 31 |
|
32 |
| -The `jest-vue` preprocessor supports basic SFC functionalities, but currently does not handle style blocks or custom blocks, which are only supported in `vue-loader`. If you rely on these features or other webpack-specific configurations, you will need to use a webpack + `vue-loader` based setup. |
| 32 | +Le préprocesseur `jest-vue` supporte les fonctionnalités basiques des composants monofichiers. Il ne gère pas actuellement les blocs de style et les blocs personnalisés, qui sont eux uniquement supportés par `vue-loader`. Si vous utilisez ces fonctionnalités ou d'autres configurations liées à webpack, vous aurez besoin d'utiliser l'installation basée sur webpack + `vue-loader` |
33 | 33 |
|
34 |
| -Read the following guides for different setups: |
| 34 | +Lisez les guides suivants pour différentes installations : |
35 | 35 |
|
36 |
| -- [Testing SFCs with Jest](./testing-SFCs-with-jest.md) |
37 |
| -- [Testing SFCs with Mocha + webpack](./testing-SFCs-with-mocha-webpack.md) |
| 36 | +- [Tester des composants monofichiers avec Jest](./testing-SFCs-with-jest.md) |
| 37 | +- [Tester des composants monofichiers avec Mocha + webpack](./testing-SFCs-with-mocha-webpack.md) |
38 | 38 |
|
39 |
| -## Resources |
| 39 | +## Ressources |
40 | 40 |
|
41 |
| -- [Test runner performance comparison](https://github.com/eddyerburgh/vue-unit-test-perf-comparison) |
42 |
| -- [Example project with Jest](https://github.com/vuejs/vue-test-utils-jest-example) |
43 |
| -- [Example project with Mocha](https://github.com/vuejs/vue-test-utils-mocha-webpack-example) |
44 |
| -- [Example project with tape](https://github.com/eddyerburgh/vue-test-utils-tape-example) |
45 |
| -- [Example project with AVA](https://github.com/eddyerburgh/vue-test-utils-ava-example) |
| 41 | +- [Comparaison de lanceurs de tests](https://github.com/eddyerburgh/vue-unit-test-perf-comparison) |
| 42 | +- [Projet exemple avec Jest](https://github.com/vuejs/vue-test-utils-jest-example) |
| 43 | +- [Projet exemple avec Mocha](https://github.com/vuejs/vue-test-utils-mocha-webpack-example) |
| 44 | +- [Projet exemple avec tape](https://github.com/eddyerburgh/vue-test-utils-tape-example) |
| 45 | +- [Projet exemple avec AVA](https://github.com/eddyerburgh/vue-test-utils-ava-example) |
0 commit comments