- If you aren’t aware of JsTestDriver concepts, consider visiting http://code.google.com/p/js-test-driver/wiki/GettingStarted.
- If you don't have JsTestDriver IntelliJ plugin installed, please visit Installation of JsTestDriver IntelliJ plugin page.
We have created a sample project for you. Please download greeter-sample example project, extract it and open the project in your IDE.
If you open GreeterTest.js for the first time, you will see highlighting on the TestCase method call expression and tooltip asking about adding JsTestDriver assertion framework support. Press Alt+Enter/Option+Enter and press OK in the opened _"Code Assistance For JsTestDriver Assertion framework"_ dialog.
Or you may position the caret on the highlighted code, press Alt+Enter/Option+Enter and choose "Add JsTestDriver assertion framework support" from the list of available intention actions.
Before you can run any of your tests you need to start the test server and capture at least one slave browser. The server does not have to reside on the machine where the test runner is, and the browsers themselves can be on different machines as well.
Starting JsTestDriver server locally
To launch the JsTestDriver server, look for the tool window at the bottom of the screen.
Click the green arrow on the toolbar to start the server. The status bar turns yellow to let you know the server is running, but has no slave browsers.
Then, copy the capture URL and paste it in a browser or just click on a browser icon to capture it automatically. The status bar turns green, and the corresponding browser icon lights up. Now you’re ready to run tests.
To run tests, right-click greeter.jstd and choose *"*Run 'greeter.jstd'". Tests will be run against the local JsTestDriver server.
In our case we have one failed test "GreeterTest test greet null". You can easily navigate from the stack trace to the source code that causes problems. You can also navigate from the test results tree to the test case/test function declaration using the F4 key.
In order to remove duplicated code that sets the greeter local variable, you can refactor the Greeter object creation to a special method called setUp, which is called before each test function is executed. Just invoke the Generate action by pressing Alt+Insert inside of a TestCase method call expression, and then choose "JsTestDriver Setup".
Use the Shift+F10 keyboard shortcut to re-run the tests after changing code.
Test with pleasure!