@@ -5,7 +5,7 @@ the foundation for most of the documentation samples and potentially a good star
It's been extended with testing support so you can start writing tests immediately.
**This is not the perfect arrangement for your application. It is not designed for production.
**This is not the perfect arrangement for your application. It is not designed for production.
It exists primarily to get you started quickly with learning and prototyping in Angular 2**
We are unlikely to accept suggestions about how to grow this QuickStart into something it is not.
...
...
@@ -95,15 +95,13 @@ We've captured many of the most useful commands in npm scripts defined in the `p
with excellent support for Angular apps that use routing.
*`npm run typings` - runs the typings tool.
*`npm run postinstall` - called by *npm* automatically *after* it successfully completes package installation. This script installs the TypeScript definition files this app requires.
Here are the test related scripts:
*`npm test` - compiles, runs and watches the karma unit tests
*`npm run webdriver:update` - ONE TIME update for protractor end-to-end (e2e) tests
*`npm run e2e` - run protractor e2e tests, written in JavaScript (*e2e-spec.js)
## Testing
The QuickStart documentation doesn't discuss testing.
The QuickStart documentation doesn't discuss testing.
This repo adds both karma/jasmine unit test and protractor end-to-end testing support.
These tools are configured for specific conventions described below.
...
...
@@ -133,25 +131,20 @@ The `HTML-Reporter` is also wired in. That produces a prettier output; look for
### End-to-end (E2E) Tests
**BEFORE RUNNING THE FIRST TEST** you must update the Selenium webdriver. Run `npm run webdriver:update`.
E2E tests are usually at the project root, above the `app` folder.
Their filenames must end in `e2e-spec.js`.
E2E tests are in the `e2e` directory, side by side with the `app` folder.
Their filenames must end in `.e2e-spec.ts`.
E2E tests must be written in JavaScript (the author has not figured out how to write them in TS yet).
Look for the example `e2e-spec.ts` in the root folder.
Add more `e2e-spec.js` files as you wish (although one usually suffices for small projects);
Look for the example `e2e/app.e2e-spec.ts`.
Add more `.e2e-spec.js` files as you wish (although one usually suffices for small projects);
we configured protractor to find them.
Thereafter, run them with `npm run e2e`.
That command first compiles, then simultaneously starts the Http-Server at `localhost:8080`
and launches protractor.
The pass/fail test results appear at the bottom of the terminal window.
A custom reporter (see `protractor.config.js`) generates a `./protractor-results.txt` file
A custom reporter (see `protractor.config.js`) generates a `./_test-output/protractor-results.txt` file
which is easier to read; this file is excluded from source control.