Jump to: navigation, search

Orion/Running the tests

Client tests

Running

  • Tests are located under the js-test folders.
  • A test is defined by an HTML file, typically named test.html.
  • To run a test, load its test.html file in your browser. (Example: http://[your_orion_server]/js-tests/serviceRegistry/test.html )
    • Test output is printed to the JavaScript console.

Writing

To create a new test:

  • Create a subdirectory of js-tests for your component.
  • Create a test.html file. Using RequireJS, your file should load these libraries:
    • orion/plugin
    • orion/test
    • Your testcase.js file (see next step).

Example test.html:

 <script src="../../orion/requirejs/require.js"></script>
 <script>
 window.onload = function() {
   require(['orion/plugin', 'orion/test', './testcase'], function(plugin, runner, testcase) {
     runner.run(testcase);
   });
 };
 </script>
  • Create a testcase.js file.
    • This file is a RequireJS module that exports a TestCase object.
    • Any properties of the TestCase object whose name begins with "test" will be executed.
    • TestCase objects can be nested.
    • A test method may optionally return a promise, which indicates the method will complete asynchronously when the promises resolves.

Example testcase.js:

 define(['orion/assert'], function(assert) {
   var tests = {};
   tests.testOne = function() {
     assert.strictEqual('a', String.fromCharCode(97), 'a is a');
   };
   return tests;
 });
  • At this point, load the test.html file in your browser and you should see the test results, like so:

Test-run.png

  • To register a test so it will be run automatically during the Orion build process, add a line to the jsTestSuite.js file, like this:
 OrionTestCase("My awesome test case", "/js-tests/mycomponent/test.html");

Server tests

Setting up

  1. Set up your Eclipse IDE as explained in Orion/Getting the source.
  2. Make sure you have imported the test projects into your workspace, and they're open:
    • org.eclipse.orion.server.tests
    • org.eclipse.orion.server.tests.feature
  3. The test projects have additional dependencies over the rest of the Orion source code. The next 3 steps explain how to satisfy them.
  4. Add the plugins from your Eclipse SDK to your target platform:
    1. Go to Preferences > Target Platform, select your target definition and click Edit.
    2. Click Add... > Installation, then type ${eclipse_home} in the Location field.
    3. Click Finish.
    4. Now there should be 2 locations shown in your target definition. Click Finish.
      Orion-target-result.png
  5. Checkout these projects from the Eclipse Platform CVS repository (/cvsroot/eclipse):
    • org.eclipse.test.performance.win32
    • org.eclipse.core.tests.harness
    • org.eclipse.core.tests.resources
    • org.eclipse.test.performance
    • org.eclipse.test.performance.data
  6. Checkout these additional libraries from the Orbit CVS repository (/cvsroot/tools):
    • javax.mail.glassfish (Branch v1_4_1)
  7. At this point you should have no Java compilation errors. You can now run the tests.

Running

  1. Go to the org.eclipse.orion.server.tests project.
  2. Open the launchConfigurations folder, right-click All Server Tests.launch and choose Run As > All Server Tests.
  3. The JUnit view will open and display the test results.

To run just a subset of the tests, edit the launch configuration (Run > Run Configurations).