This repository was archived by the owner on Dec 18, 2018. It is now read-only.
Make it possible to run the Browser Functional Tests from the command line#1448
Merged
Conversation
fd39de5 to
9306956
Compare
Contributor
Author
|
Had to leave before tslint errors were all resolved but they're minimal and I will fix them before check-in (After all the build will be red ;)) |
davidfowl
reviewed
Feb 15, 2018
|
|
||
| <Target Name="ClientBuild" BeforeTargets="AfterBuild"> | ||
| <!-- This will result in a double build of the JavaScript modules. Not sure the best way to deal with that right now. --> | ||
| <Exec Command="npm run build" WorkingDirectory="$(MSBuildThisFileDirectory)/.." /> |
Contributor
Author
|
The TODOs are to be done in the PR before merge. In fact, they are done now. |
analogrelay
commented
Feb 15, 2018
| "tree-kill": "^1.2.0", | ||
| "ts-node": "^4.1.0", | ||
| "webdriver-manager": "^12.0.6", | ||
| "yargs": "^11.0.0" |
Contributor
Author
There was a problem hiding this comment.
FYI @Eilon, some additional dev-time-only dependencies.
Contributor
There was a problem hiding this comment.
Got it. I assume you did/will do the needful?
Contributor
Author
There was a problem hiding this comment.
Indeed I shall, just raising it FYI
Contributor
Author
|
Still got some flaky tests going on in AppVeyor... @BrennanConroy / @davidfowl are you guys aware of these? |
Member
|
I'm trying to fix the flakyness, I can't get my last PR to pass a single run. |
3 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR configures the
npm testcommand in theclient-ts\FunctionalTeststo automatically launch a browser (headless chrome, by default) and run the functional tests, collecting the results and writing them out.There are a few elements to this:
<li>elements in a hidden<ul>element (optionally made visible by thedisplayTapquery string value)run-tests.jsscript, uses theselenium-webdriverpackage. It:<li>values and write them to the console, until the tests completerun-tests.jsscript basically acts as a script that writes TAP output for our functional tests. We can pipe that through any TAP-compatible reporter (we usefaucethere) to report output.IMPORTANT: This is not yet integrated into our build, the first pass is just to make it runnable and provide the infrastructure.
Also, this mechanism should be able to automate BrowserStack/Sauce Labs/some other browser lab. We'll need to work out the mechanisms for deploying the server code somewhere, but we should be able to use this to move forward with that.
Examples:
Successful test run (click to embiggen):
Failed test run (click to embiggen):
TODO