Testing - Software-Engineering-Spring-2020/PollyPaint GitHub Wiki

This document outlines plans for testing that will be done with PollyPaint. As we're not entirely sure which features will be implemented, features that aren't implemented won't be tested.

System testing

Testing the system as a whole

Testing against specifications

  • Change the color of a pixel on the screen
  • Draw straight lines
  • Visual grid
  • Snapping grid | Note: Probably won't be implemented
  • Fill shapes with colors and gradients
  • Save file
  • Draw curves
  • Group and move objects
  • Split up grouped objects
  • Scale and resize object
  • Scale and resize groups
  • Rotate objects
  • Duplicate objects
  • Zoom and pan around canvas
  • Draw text on screen
  • Use a textbox to type text on screen
  • Run spellcheck | Note: May not be implemented
  • Import images (png, jpg, svg, pdf)
  • Move and rescale images
  • Add annotations
  • Turn annotations on or off
  • Print drawings | Note: Will not be implemented, or may be implemented after exporting file to png
  • Verify there are only buttons / no drop-downs
  • Works on a Mac computer
  • Works on a Windows computer

Holistic functionality

  • Resize window and see how drawSpace/toolbar respond

Edge cases

  • Draw shapes off the drawSpace
  • Input problematic coordinates to move objects (negative coordinates, coordinates larger than the screen, etc)
  • Input problematic rgb values (negative values, values greater than 255)
  • Scale an object by a very large number, making it larger than the window
  • Fill the screen with objects
  • Save a file with the same name as a previous file
  • Save a file with strange character names
  • Try to fill a free-drawn shape that isn't closed
  • Layer objects on top of each other and try to manipulate them
  • See how spellcheck responds to a different language