Left: | ||
Right: |
LEFT | RIGHT |
---|---|
1 # Adblock Plus Tests | 1 # Adblock Plus Tests |
2 | 2 |
3 ## Introduction | 3 ## Introduction |
4 | 4 |
5 The `adblockplustests` repository contains the test suite for the Adblock Plus | 5 The `adblockplustests` repository contains the test suite for the Adblock Plus |
6 Firefox extension `adblockplus`. This test suite is itself a separate Firefox | 6 extension in Firefox. This test suite is itself a separate Firefox extension |
Wladimir Palant
2015/10/09 17:35:01
"for the Adblock Plus Firefox extension `adblockpl
kzar
2015/10/12 11:06:07
Done.
| |
7 extension which interacts with the Adblock Plus extension in order to test it. | 7 which interacts with the Adblock Plus extension in order to test it. |
8 (It is therefore assumed that the tests should pass when the latest available | 8 (It is therefore assumed that the tests should pass when the latest available |
9 revisions of `adblockplus` and `adblockplustests` are used in combination.) | 9 revisions of `adblockplus` and `adblockplustests` are used in combination.) |
10 | 10 |
11 Some of the tests in this test suite are also re-used by the Chrome/Opera/Safari | 11 Some of the tests in this test suite are also reused by the Chrome/Opera/Safari |
12 version of Adblock Plus `adblockpluschrome`. They are included in the | 12 version of Adblock Plus. Please see the `adblockpluschrome` repository for |
13 repository as a dependency, and they are run from within the extension using its | 13 details on how to run the tests there. |
14 in-built test runner. (The dependency is managed by the `ensure_dependencies.py` | |
15 script and the expected revision of `adblockplustests` is therefore specified | |
16 explicitly.) | |
Wladimir Palant
2015/10/09 17:35:01
Please don't document technical details, these can
kzar
2015/10/12 11:06:08
Done.
| |
17 | 14 |
18 | 15 |
19 ## Usage | 16 ## Usage |
20 | |
21 ### Firefox | |
22 | 17 |
23 To test your changes to Adblock Plus for Firefox you will need to build and | 18 To test your changes to Adblock Plus for Firefox you will need to build and |
24 install both your modified version of the extension and the test suite. For | 19 install both your modified version of the extension and the test suite. For |
25 each project you will need to type the following: | 20 each project you will need to type the following: |
26 | 21 |
27 ./build.py build | 22 ./build.py build |
28 | 23 |
29 This will create a build with a name in the form | 24 This will create a build with a name in the form |
30 `adblockplus[tests]-1.2.3.nnnn.xpi`, which you can then manually add to Firefox. | 25 `adblockplus[tests]-1.2.3.nnnn.xpi`, which you can then manually add to Firefox. |
31 | 26 |
32 Alternatively, to speed up the process, you can install the | 27 Alternatively, to speed up the process, you can install the |
33 [Extension Auto-Installer](https://addons.mozilla.org/addon/autoinstaller) | 28 [Extension Auto-Installer](https://addons.mozilla.org/addon/autoinstaller) |
34 extension. Assuming that Extension Auto-Installer is configured to use port 8888 | 29 extension. Assuming that Extension Auto-Installer is configured to use port 8888 |
35 (the default value), you can build and install in one step by running: | 30 (the default value), you can build and install in one step by running: |
36 | 31 |
37 ./build.py autoinstall 8888 | 32 ./build.py autoinstall 8888 |
38 | 33 |
39 Once both the Adblock Plus and Adblock Plus Tests extensions have been built and | 34 Once both the Adblock Plus and Adblock Plus Tests extensions have been built and |
40 installed you can run the test suite by opening the Firefox Add-ons Manager, | 35 installed you can run the test suite by opening the Firefox Add-ons Manager, |
41 pressing the "Preferences" button for the Adblock Plus Tests extension and then | 36 pressing the "Preferences" button for the Adblock Plus Tests extension and then |
42 pressing the "Run" button. | 37 pressing the "Run" button. |
43 | 38 |
44 Things to note: | 39 Things to note: |
45 | 40 |
46 - The test suite can take some time to run, sometimes several minutes. | 41 - The test suite can take some time to run, sometimes several minutes. |
47 - If you re-install the Adblock Plus Tests extension you will need to re-load | 42 - If you re-install the Adblock Plus Tests extension you will need to re-load |
48 the preferences page before pressing "Run" again. Otherwise the tests will not | 43 the preferences page before pressing "Run" again. Otherwise the tests will not |
49 re-start. | 44 re-start. |
50 - The final storage tests often get stuck. | 45 - Some tests are currently known to fail (sometimes depending on your browser |
51 - Some tests will fail intermittently with a `NS_ERROR_FAILURE` message. | 46 version and configuration). It is recommended to run the test suite first, |
52 - Several `Content policy: HTML embed (Java)` tests are currently failing. | 47 before making any changes, to check which tests are expected to fail. |
Wladimir Palant
2015/10/09 17:35:01
I'd not document specific test failures, these can
kzar
2015/10/12 11:06:08
Done.
| |
53 | |
54 | |
55 ### Chrome | |
Sebastian Noack
2015/10/09 12:00:09
IMO this section is irrelevant and redundant here.
kzar
2015/10/09 14:39:42
Yea, maybe you're right. I wasn't sure either way
Wladimir Palant
2015/10/09 17:35:01
I agree with Sebastian, this is unnecessary. The n
kzar
2015/10/12 11:06:07
Done.
| |
56 | |
57 To test your changes to Adblock Plus for Chrome, go to the extension's options | |
58 page, open the JavaScript Console and type: | |
59 | |
60 location.href = "qunit/index.html"; | |
61 | |
62 The unit tests should then run automatically in the page. For more information | |
63 about building and testing the Chrome extension please refer to [the project's | |
64 README file](https://hg.adblockplus.org/adblockpluschrome/file/tip/README.md). | |
LEFT | RIGHT |