Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Delta Between Two Patch Sets: tests/README.md

Issue 29501558: Issue 5383 - Add tests for the Chrome and Firefox packagers (Closed)
Left Patch Set: Created July 31, 2017, 12:07 p.m.
Right Patch Set: Addressing Vasily's comments Created Oct. 22, 2017, 11:11 a.m.
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
Right: Side by side diff | Download
« no previous file with change/comment | « packagerChrome.py ('k') | tests/abp-16.png » ('j') | no next file with change/comment »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
LEFTRIGHT
(no file at all)
1 # Buildtools unit tests
2
3 ## Introduction
4
5 Unit tests for buildtools, using the pytest framework.
6
7 ## Approach
8
9 In order to test the buildtools capability of creating WebExtension-packages
10 for Chrome, Edge and Firefox, an example configuration for each platform is
11 provided.
12 Running the tests calls the same API as the cli would, except for releases
13 (we don't want to trigger our releaseAutomation during tests) - in this case,
14 a build is manually created and verified).
15
16 Each extension is build with different parameters, the resulting package and
17 it's content is compared against provided expected results:
18
19 - Release or build-only, with or without a specific build-number (Edge)
20 - Release, build-only or developement environment, with or without a specifc
21 build-number (Chrome, Firefox), with or without a predefined signing key
22 (Chrome)
23
24 The expected results for each manifest are provided with the files in
25 `expecteddata/`.
26
27 ## Test cases
28
29 _(Covered platforms are referred to as C=Chrome, E=Edge, F=Firefox.)_
30
31 - Metadata inheritance (EF)
32 - Correct package filename (CEF)
33 - Printed warning about non-square icons (CEF)
34 - Presence of JavaScript unit test files in developement environment (CEF)
35 - Absence of JavaScript unit test files in build-only or release (CEF)
36 - Inlcusion of defined contentScripts into the manifest (CEF)
37 - Packaging (and moving) of included icons / scripts / HTML files (CEF)
38 - Presence of files for all configured locales (CEF)
39 - Correct import of translations with or without placeholders, with or without
40 access keys (CEF)
41 - Translation presence and validity for the Chrome Web Store (C)
42 - Packaging of modularized script files with webpack (CEF)
43 - Adherence to provided build-number in the manifest (CEF)
44 - Other content in the manifest (CEF)
45 - Correct encrypted signature of the package (C)
46
47 ## Requirements
48
49 - [Tox](https://pypi.python.org/pypi/tox) (>= 2.7.0)
50
51 _(Tox will take care of installing the other dependencies such as flake8 and
52 flake8-abp inside a virtualenv.)_
53
54 ## Usage
55
56 To run the tests simply run
57
58 ```
59 $ tox
60 ```
61
62 in the buildtools' root folder.
63
64 ## Coverage
65
66 Pytest will create a coverage report as output to the terminal, using the
67 pytest plugin `pytest-cov`.
68
69 In order to get an html report you can add `--cov-report=html` to the
70 pytest-command in tox.ini.
71
72 For more information please refer to the
73 [coverage documentation](https://coverage.readthedocs.io/)
LEFTRIGHT

Powered by Google App Engine
This is Rietveld