''Note: The [[FBTest]] extension will be part of the Firebug development version at some point. This means that you'll need to install it only if you want to test the Firebug end user version. This page will be updated as soon as this happens.''

''Note: The [[FBTest]] extension will be part of the Firebug development version at some point. This means that you'll need to install it only if you want to test the Firebug end user version. This page will be updated as soon as this happens.''

−

== Test Console UI ==

== Test Console UI ==

Line 36:

Line 34:

There is also an URL bar that allows to load a test setup file. This file specifies all info necessary to execute the tests. Such a file is included in Firebug distribution and so, if you have Firebug installed you can always load: chrome://firebug/content/testList.html (the default Firebug test setup file).

There is also an URL bar that allows to load a test setup file. This file specifies all info necessary to execute the tests. Such a file is included in Firebug distribution and so, if you have Firebug installed you can always load: chrome://firebug/content/testList.html (the default Firebug test setup file).

−

== Export Errors ==

== Export Errors ==

Line 42:

Line 39:

[[File:Fb-test-copy-all-errors.png|center]]

[[File:Fb-test-copy-all-errors.png|center]]

−

== Submit Test Results ==

== Submit Test Results ==

Line 50:

Line 46:

''Note that submitted into contains list of all installed extensions in the current Firefox profile.''

''Note that submitted into contains list of all installed extensions in the current Firefox profile.''

−

== Running Tests From The Command Line ==

== Running Tests From The Command Line ==

It's also possible to automatically run all tests (or one specific test) from the command line when launching Firefox. The syntax of the parameter is as follows:

It's also possible to automatically run all tests (or one specific test) from the command line when launching Firefox. The syntax of the parameter is as follows:

* Test List (*.html) This file is loaded into the Test Console and specifies neccessary information (URLs) about test cases and test drivers locations. It also contains a javascript inline defintion of test drivers or includes it from an external *.js file using the <script> tag.

* Test List (*.html) This file is loaded into the Test Console and specifies neccessary information (URLs) about test cases and test drivers locations. It also contains a javascript inline defintion of test drivers or includes it from an external *.js file using the <script> tag.

−

== Test List File Structure ==

== Test List File Structure ==

Line 88:

Line 89:

The test list file must be implemented as a regular page. Here is an example of such a file.

The test list file must be implemented as a regular page. Here is an example of such a file.

−

<pre code="xml">

+

<source lang="xml">

<html>

<html>

<head>

<head>

Line 108:

Line 109:

</body>

</body>

</html>

</html>

−

</pre>

+

</source>

If you load such a file into the test console, you should see one expandable group with one test.

If you load such a file into the test console, you should see one expandable group with one test.

Line 145:

Line 146:

** You should only need fbug/extensions/swarm/branches/swarm1.6/swarms

** You should only need fbug/extensions/swarm/branches/swarm1.6/swarms

** create a local.properties file in the swarms/ folder and define the path to your firefox and the swarm server:

** create a local.properties file in the swarms/ folder and define the path to your firefox and the swarm server:

You should see how all tests displayed in the test console are executed step by step. The browser window should automatically load test pages and automate specific steps needed for test execution.

In order to test Firebug you need to install FBTest and load the related test suite.

Note: The FBTest extension will be part of the Firebug development version at some point. This means that you'll need to install it only if you want to test the Firebug end user version. This page will be updated as soon as this happens.

Test Console UI

The main purpose of the test console is displaying and executing tests in a test suite. First of all let's see a screenshot of the console. Note that all tests are divided into groups.

You can see a toolbar with following actions:

Run All Use this button to run all tests from the current test suite.

Stop Use this button to stop running tests.

Fail Halt Use this option (two state button) to automatically stop test execution when an error occurs (you need Chromebug installed). In such a case Chromebug will automatically switch into the debug mode showing the source line where the error happend. You can continue debugging the test code or put a breakpoint and run the test again.

Refresh Reloads the current test list.

No Timeout Use this option to disable timeout on running test. Useful when debugging in Chromebug.

There is also an URL bar that allows to load a test setup file. This file specifies all info necessary to execute the tests. Such a file is included in Firebug distribution and so, if you have Firebug installed you can always load: chrome://firebug/content/testList.html (the default Firebug test setup file).

Export Errors

In order to export all reported failures, just right-click within the Test Console window content and pick Copy All Errors from the context menu. An error report will be copied into the clipboard together with information about current Firebug & Firefox versions, current test-list URL and also version and name of the underlying OS.

Submit Test Results

Firebug test console also allows submitting your test results to an online database. This DB is used mainly by testbot, but can contains also results from users who manually run automated test suite. This DB is consequently monitored by Firebug team members to check whether test are running on various configurations.

Note that submitted into contains list of all installed extensions in the current Firefox profile.

Running Tests From The Command Line

It's also possible to automatically run all tests (or one specific test) from the command line when launching Firefox. The syntax of the parameter is as follows:

-runFBTests <test-setup-file-uri>#<test-driver-relative-path>

Let's see some examples.

Run all default tests afer Firefox is started using the default user profile

Terminology

Each automated test is typically composed two parts.

Test Page (*.html) This is a regular web page (often with AJAX code) that represents specific scenario being tested. Since (at least in case of Firebug tests) these pages are available online, the tester can simply load it in the browser (no need for FBTest extension), manually follow described scenario and execute the test without any automation.

Test Driver (*.js) This is the automation part. Piece of javascript that loads the test page and executes all steps automatically.

Finally, tests can be combined together.

Test List (*.html) This file is loaded into the Test Console and specifies neccessary information (URLs) about test cases and test drivers locations. It also contains a javascript inline defintion of test drivers or includes it from an external *.js file using the <script> tag.

Test List File Structure

The test list file must be implemented as a regular page. Here is an example of such a file.