56 lines
1.6 KiB
Markdown
56 lines
1.6 KiB
Markdown
|
# Test Guide
|
||
|
|
||
|
|
||
|
|
||
|
## Functional Test
|
||
|
|
||
|
Open `./*.html` files in Web Browsers.
|
||
|
|
||
|
|
||
|
|
||
|
## Unit Test
|
||
|
|
||
|
### Rendering-relevant
|
||
|
|
||
|
Our test strategy is to compare the rendered canvas of current version with last release version. The comparison can either based on the *content* of rendered canvas, or the *stack* of canvas operations.
|
||
|
|
||
|
When a test case fails, it doesn't necessary to be a bug since the rendering method may be changed intentionally in a commit. So in this case, we output the rendering result of both versions and the diff result.
|
||
|
|
||
|
Make sure `../dist/echarts.js` is the built based on current source files by:
|
||
|
|
||
|
```bash
|
||
|
cd ../build
|
||
|
npm install
|
||
|
bash build.sh
|
||
|
```
|
||
|
|
||
|
By default, we compare current version with last release version. To run the test, you should first download last release using:
|
||
|
|
||
|
```bash
|
||
|
cd ../test/ut
|
||
|
./configure
|
||
|
```
|
||
|
|
||
|
which will download `echart.js` of last release into `./ut/tmp/oldEcharts.js`.
|
||
|
|
||
|
Then, open `./ut/ui.html` in Web Browsers.
|
||
|
|
||
|
#### Compare current with a specific release
|
||
|
|
||
|
If one argument is passed, we take it as the hash code of a release and compare current version with `/dist/echarts.js` of the that version.
|
||
|
|
||
|
```bash
|
||
|
# this compares current `/dist/echarts.js` with that of v3.1.6
|
||
|
./configure 3724a16
|
||
|
```
|
||
|
|
||
|
#### Compare arbitrary two commits
|
||
|
|
||
|
Since `/dist/echarts.js` is only the build result of release versions, to compare arbitrary versions, you need to checkout specific commits and build the source files. Put the build results as `./tmp/oldEcharts.js` and `./tmp/newEcharts.js` will work.
|
||
|
|
||
|
|
||
|
|
||
|
### Rendering-irrelevant
|
||
|
|
||
|
Open `./ut.html` files in Web Browsers.
|