Simplify code reviews with quick automated testing inside CI.
If you get an error in e2e test after PR in repo and you sure that all is right, just make a new screenshot. Sometime you can get wrong results on different GPUs, especially on macbook's. Keep screenshots pack updated for tests.
# generate new screenshots for exact examples
npm run make-screenshot <example1_name> ... <exampleN_name>
# check exact examples
npm run test-e2e <example1_name> ... <exampleN_name>
# check all examples
npm run test-e2e
# check all examples in browser
npx cross-env VISIBLE=ture npm run test-e2e
Travis | Attempts |
---|---|
61 from 362 failed, time=21:14 | networkidle0 timeout |
26 from 362 failed, time=16:22 | with rAF hook |
13=1+1+7+4 failed, time=4:26 | with render promise and parallelism |
4=0+0+2+2 failed, time=5:13 | with network tax and other settings |
4=0+0+2+2 failed, time=3:26 | with progressive attempts |
95% examples are covered with tests. Random robusness in CI >85%. Robustness on different machines ~97%. For example on integrated GPU you can have additional artifacts: webgl_materials_texture_anisotropy, webgl_postprocessing_procedural, webgl_shaders_tonemapping.
webgl_loader_bvh, webgl_simple_gi, webgl_postprocessing_dof2, webgl_loader_texture_pvrtc, webgl_physics_volume
You can help with MacOS support.