浏览代码

Automatic regression testing with CI

[email protected] 5 年之前
父节点
当前提交
28a288d68c
共有 100 个文件被更改,包括 35 次插入6 次删除
  1. 3 2
      .github/CONTRIBUTING.md
  2. 26 4
      .travis.yml
  3. 6 0
      examples/misc_animation_authoring.html
  4. 二进制
      examples/screenshots/css2d_label.png
  5. 二进制
      examples/screenshots/css3d_molecules.png
  6. 二进制
      examples/screenshots/css3d_orthographic.png
  7. 二进制
      examples/screenshots/css3d_panorama.png
  8. 二进制
      examples/screenshots/css3d_panorama_deviceorientation.png
  9. 二进制
      examples/screenshots/css3d_periodictable.png
  10. 二进制
      examples/screenshots/css3d_sandbox.png
  11. 二进制
      examples/screenshots/css3d_sprites.png
  12. 二进制
      examples/screenshots/css3d_youtube.png
  13. 二进制
      examples/screenshots/misc_animation_authoring.png
  14. 二进制
      examples/screenshots/misc_animation_groups.png
  15. 二进制
      examples/screenshots/misc_animation_keys.png
  16. 二进制
      examples/screenshots/misc_boxselection.png
  17. 二进制
      examples/screenshots/misc_controls_deviceorientation.png
  18. 二进制
      examples/screenshots/misc_controls_drag.png
  19. 二进制
      examples/screenshots/misc_controls_fly.png
  20. 二进制
      examples/screenshots/misc_controls_map.png
  21. 二进制
      examples/screenshots/misc_controls_orbit.png
  22. 二进制
      examples/screenshots/misc_controls_pointerlock.png
  23. 二进制
      examples/screenshots/misc_controls_trackball.png
  24. 二进制
      examples/screenshots/misc_controls_transform.png
  25. 二进制
      examples/screenshots/misc_exporter_collada.png
  26. 二进制
      examples/screenshots/misc_exporter_draco.png
  27. 二进制
      examples/screenshots/misc_exporter_gltf.png
  28. 二进制
      examples/screenshots/misc_exporter_obj.png
  29. 二进制
      examples/screenshots/misc_exporter_ply.png
  30. 二进制
      examples/screenshots/misc_exporter_stl.png
  31. 二进制
      examples/screenshots/misc_lookat.png
  32. 二进制
      examples/screenshots/misc_uv_tests.png
  33. 二进制
      examples/screenshots/raytracing_sandbox.png
  34. 二进制
      examples/screenshots/svg_lines.png
  35. 二进制
      examples/screenshots/svg_sandbox.png
  36. 二进制
      examples/screenshots/webaudio_orientation.png
  37. 二进制
      examples/screenshots/webaudio_sandbox.png
  38. 二进制
      examples/screenshots/webaudio_timing.png
  39. 二进制
      examples/screenshots/webaudio_visualizer.png
  40. 二进制
      examples/screenshots/webgl2_materials_texture2darray.png
  41. 二进制
      examples/screenshots/webgl2_materials_texture3d.png
  42. 二进制
      examples/screenshots/webgl2_multisampled_renderbuffers.png
  43. 二进制
      examples/screenshots/webgl2_sandbox.png
  44. 二进制
      examples/screenshots/webgl_animation_cloth.png
  45. 二进制
      examples/screenshots/webgl_animation_keyframes.png
  46. 二进制
      examples/screenshots/webgl_animation_multiple.png
  47. 二进制
      examples/screenshots/webgl_animation_skinning_blending.png
  48. 二进制
      examples/screenshots/webgl_animation_skinning_morph.png
  49. 二进制
      examples/screenshots/webgl_buffergeometry.png
  50. 二进制
      examples/screenshots/webgl_buffergeometry_compression.png
  51. 二进制
      examples/screenshots/webgl_buffergeometry_constructed_from_geometry.png
  52. 二进制
      examples/screenshots/webgl_buffergeometry_custom_attributes_particles.png
  53. 二进制
      examples/screenshots/webgl_buffergeometry_drawrange.png
  54. 二进制
      examples/screenshots/webgl_buffergeometry_indexed.png
  55. 二进制
      examples/screenshots/webgl_buffergeometry_instancing.png
  56. 二进制
      examples/screenshots/webgl_buffergeometry_instancing2.png
  57. 二进制
      examples/screenshots/webgl_buffergeometry_instancing_billboards.png
  58. 二进制
      examples/screenshots/webgl_buffergeometry_instancing_dynamic.png
  59. 二进制
      examples/screenshots/webgl_buffergeometry_instancing_interleaved.png
  60. 二进制
      examples/screenshots/webgl_buffergeometry_instancing_interleaved_dynamic.png
  61. 二进制
      examples/screenshots/webgl_buffergeometry_instancing_lambert.png
  62. 二进制
      examples/screenshots/webgl_buffergeometry_lines.png
  63. 二进制
      examples/screenshots/webgl_buffergeometry_lines_indexed.png
  64. 二进制
      examples/screenshots/webgl_buffergeometry_morphtargets.png
  65. 二进制
      examples/screenshots/webgl_buffergeometry_points.png
  66. 二进制
      examples/screenshots/webgl_buffergeometry_points_interleaved.png
  67. 二进制
      examples/screenshots/webgl_buffergeometry_rawshader.png
  68. 二进制
      examples/screenshots/webgl_buffergeometry_selective_draw.png
  69. 二进制
      examples/screenshots/webgl_buffergeometry_uint.png
  70. 二进制
      examples/screenshots/webgl_camera.png
  71. 二进制
      examples/screenshots/webgl_camera_array.png
  72. 二进制
      examples/screenshots/webgl_camera_cinematic.png
  73. 二进制
      examples/screenshots/webgl_camera_logarithmicdepthbuffer.png
  74. 二进制
      examples/screenshots/webgl_clipping.png
  75. 二进制
      examples/screenshots/webgl_clipping_advanced.png
  76. 二进制
      examples/screenshots/webgl_clipping_intersection.png
  77. 二进制
      examples/screenshots/webgl_clipping_stencil.png
  78. 二进制
      examples/screenshots/webgl_custom_attributes.png
  79. 二进制
      examples/screenshots/webgl_custom_attributes_lines.png
  80. 二进制
      examples/screenshots/webgl_custom_attributes_points.png
  81. 二进制
      examples/screenshots/webgl_custom_attributes_points2.png
  82. 二进制
      examples/screenshots/webgl_custom_attributes_points3.png
  83. 二进制
      examples/screenshots/webgl_decals.png
  84. 二进制
      examples/screenshots/webgl_depth_texture.png
  85. 二进制
      examples/screenshots/webgl_effects_anaglyph.png
  86. 二进制
      examples/screenshots/webgl_effects_ascii.png
  87. 二进制
      examples/screenshots/webgl_effects_parallaxbarrier.png
  88. 二进制
      examples/screenshots/webgl_effects_peppersghost.png
  89. 二进制
      examples/screenshots/webgl_effects_stereo.png
  90. 二进制
      examples/screenshots/webgl_fire.png
  91. 二进制
      examples/screenshots/webgl_framebuffer_texture.png
  92. 二进制
      examples/screenshots/webgl_furnace_test.png
  93. 二进制
      examples/screenshots/webgl_geometries.png
  94. 二进制
      examples/screenshots/webgl_geometries_parametric.png
  95. 二进制
      examples/screenshots/webgl_geometry_colors.png
  96. 二进制
      examples/screenshots/webgl_geometry_colors_lookuptable.png
  97. 二进制
      examples/screenshots/webgl_geometry_convex.png
  98. 二进制
      examples/screenshots/webgl_geometry_cube.png
  99. 二进制
      examples/screenshots/webgl_geometry_dynamic.png
  100. 二进制
      examples/screenshots/webgl_geometry_extrude_shapes.png

+ 3 - 2
.github/CONTRIBUTING.md

@@ -1,5 +1,5 @@
 
-# Help 
+# Help
 #### The issues section is for bug reports and feature requests only. If you need help, please use the [forum](http://discourse.threejs.org/) or [stackoverflow](http://stackoverflow.com/questions/tagged/three.js).
 ---
 # Bugs
@@ -25,4 +25,5 @@
 2. Fork the repository on GitHub.
 3. Check the [Contribution Guidelines](https://github.com/mrdoob/three.js/wiki/How-to-contribute-to-three.js).
 4. Make changes to your clone of the repository.
-5. Submit a pull request. Don't include build files in the PR.
+5. If your changes leads to a change in examples, make a new screenshot with `npm run make-screenshot <example_name>`.
+6. Submit a pull request. Don't include build files in the PR.

+ 26 - 4
.travis.yml

@@ -1,5 +1,27 @@
 language: node_js
-node_js:
-  - node
-script:
-  - npm run travis
+node_js: node
+services: xvfb
+cache: bundler
+
+jobs:
+  include:
+
+    - &lint-n-unit
+      stage: lint & unit
+      name: lint
+      script: npm run lint
+    - <<: *lint-n-unit
+      name: unit
+      script: npm run test-unit
+
+    - &diff
+      stage: diff
+      name: diff
+      script: FORCE_COLOR=0 npm run test-diff
+      env: CI=0
+    - <<: *diff
+      env: CI=1
+    - <<: *diff
+      env: CI=2
+    - <<: *diff
+      env: CI=3

+ 6 - 0
examples/misc_animation_authoring.html

@@ -161,5 +161,11 @@
 
 		</script>
 
+		<script>
+			if (navigator.webdriver) { // off for testing
+				setTimeout(() => { document.getElementsByTagName('div')[1].style.display = 'none' }, 750)
+			}
+		</script>
+
 	</body>
 </html>

二进制
examples/screenshots/css2d_label.png


二进制
examples/screenshots/css3d_molecules.png


二进制
examples/screenshots/css3d_orthographic.png


二进制
examples/screenshots/css3d_panorama.png


二进制
examples/screenshots/css3d_panorama_deviceorientation.png


二进制
examples/screenshots/css3d_periodictable.png


二进制
examples/screenshots/css3d_sandbox.png


二进制
examples/screenshots/css3d_sprites.png


二进制
examples/screenshots/css3d_youtube.png


二进制
examples/screenshots/misc_animation_authoring.png


二进制
examples/screenshots/misc_animation_groups.png


二进制
examples/screenshots/misc_animation_keys.png


二进制
examples/screenshots/misc_boxselection.png


二进制
examples/screenshots/misc_controls_deviceorientation.png


二进制
examples/screenshots/misc_controls_drag.png


二进制
examples/screenshots/misc_controls_fly.png


二进制
examples/screenshots/misc_controls_map.png


二进制
examples/screenshots/misc_controls_orbit.png


二进制
examples/screenshots/misc_controls_pointerlock.png


二进制
examples/screenshots/misc_controls_trackball.png


二进制
examples/screenshots/misc_controls_transform.png


二进制
examples/screenshots/misc_exporter_collada.png


二进制
examples/screenshots/misc_exporter_draco.png


二进制
examples/screenshots/misc_exporter_gltf.png


二进制
examples/screenshots/misc_exporter_obj.png


二进制
examples/screenshots/misc_exporter_ply.png


二进制
examples/screenshots/misc_exporter_stl.png


二进制
examples/screenshots/misc_lookat.png


二进制
examples/screenshots/misc_uv_tests.png


二进制
examples/screenshots/raytracing_sandbox.png


二进制
examples/screenshots/svg_lines.png


二进制
examples/screenshots/svg_sandbox.png


二进制
examples/screenshots/webaudio_orientation.png


二进制
examples/screenshots/webaudio_sandbox.png


二进制
examples/screenshots/webaudio_timing.png


二进制
examples/screenshots/webaudio_visualizer.png


二进制
examples/screenshots/webgl2_materials_texture2darray.png


二进制
examples/screenshots/webgl2_materials_texture3d.png


二进制
examples/screenshots/webgl2_multisampled_renderbuffers.png


二进制
examples/screenshots/webgl2_sandbox.png


二进制
examples/screenshots/webgl_animation_cloth.png


二进制
examples/screenshots/webgl_animation_keyframes.png


二进制
examples/screenshots/webgl_animation_multiple.png


二进制
examples/screenshots/webgl_animation_skinning_blending.png


二进制
examples/screenshots/webgl_animation_skinning_morph.png


二进制
examples/screenshots/webgl_buffergeometry.png


二进制
examples/screenshots/webgl_buffergeometry_compression.png


二进制
examples/screenshots/webgl_buffergeometry_constructed_from_geometry.png


二进制
examples/screenshots/webgl_buffergeometry_custom_attributes_particles.png


二进制
examples/screenshots/webgl_buffergeometry_drawrange.png


二进制
examples/screenshots/webgl_buffergeometry_indexed.png


二进制
examples/screenshots/webgl_buffergeometry_instancing.png


二进制
examples/screenshots/webgl_buffergeometry_instancing2.png


二进制
examples/screenshots/webgl_buffergeometry_instancing_billboards.png


二进制
examples/screenshots/webgl_buffergeometry_instancing_dynamic.png


二进制
examples/screenshots/webgl_buffergeometry_instancing_interleaved.png


二进制
examples/screenshots/webgl_buffergeometry_instancing_interleaved_dynamic.png


二进制
examples/screenshots/webgl_buffergeometry_instancing_lambert.png


二进制
examples/screenshots/webgl_buffergeometry_lines.png


二进制
examples/screenshots/webgl_buffergeometry_lines_indexed.png


二进制
examples/screenshots/webgl_buffergeometry_morphtargets.png


二进制
examples/screenshots/webgl_buffergeometry_points.png


二进制
examples/screenshots/webgl_buffergeometry_points_interleaved.png


二进制
examples/screenshots/webgl_buffergeometry_rawshader.png


二进制
examples/screenshots/webgl_buffergeometry_selective_draw.png


二进制
examples/screenshots/webgl_buffergeometry_uint.png


二进制
examples/screenshots/webgl_camera.png


二进制
examples/screenshots/webgl_camera_array.png


二进制
examples/screenshots/webgl_camera_cinematic.png


二进制
examples/screenshots/webgl_camera_logarithmicdepthbuffer.png


二进制
examples/screenshots/webgl_clipping.png


二进制
examples/screenshots/webgl_clipping_advanced.png


二进制
examples/screenshots/webgl_clipping_intersection.png


二进制
examples/screenshots/webgl_clipping_stencil.png


二进制
examples/screenshots/webgl_custom_attributes.png


二进制
examples/screenshots/webgl_custom_attributes_lines.png


二进制
examples/screenshots/webgl_custom_attributes_points.png


二进制
examples/screenshots/webgl_custom_attributes_points2.png


二进制
examples/screenshots/webgl_custom_attributes_points3.png


二进制
examples/screenshots/webgl_decals.png


二进制
examples/screenshots/webgl_depth_texture.png


二进制
examples/screenshots/webgl_effects_anaglyph.png


二进制
examples/screenshots/webgl_effects_ascii.png


二进制
examples/screenshots/webgl_effects_parallaxbarrier.png


二进制
examples/screenshots/webgl_effects_peppersghost.png


二进制
examples/screenshots/webgl_effects_stereo.png


二进制
examples/screenshots/webgl_fire.png


二进制
examples/screenshots/webgl_framebuffer_texture.png


二进制
examples/screenshots/webgl_furnace_test.png


二进制
examples/screenshots/webgl_geometries.png


二进制
examples/screenshots/webgl_geometries_parametric.png


二进制
examples/screenshots/webgl_geometry_colors.png


二进制
examples/screenshots/webgl_geometry_colors_lookuptable.png


二进制
examples/screenshots/webgl_geometry_convex.png


二进制
examples/screenshots/webgl_geometry_cube.png


二进制
examples/screenshots/webgl_geometry_dynamic.png


二进制
examples/screenshots/webgl_geometry_extrude_shapes.png


部分文件因为文件数量过多而无法显示