Project Testing


Test Environment

As described in the syllabus, we'll start testing each project inside a freshly installed copy of Ubuntu 16.04 LTS (Xenial Xerus).

You can download the Ubuntu image we use to build our test environment here.

The SHA256 digest for the image is

4bcec83ef856c50c6866f3b0f3942e011104b5ecc6d955d1e7061faff86070d4

We'll then execute the script that you provide and installs all required packages, e.g. tomcat, Java, etc.

If you don't provide a script that install all packages that will be needed to build and test your project, then we can follow your written instructions, as in we can copy from your README file and paste to the command line of the test environment.

NOTE: the tester won't be able to follow generic instructions like "install the Java SDK", etc.

Testing Algorithm

  1. if (build script is missing) then STOP, assign a score of zero for the project.
  2. if (build script fails to generate an executable) then STOP, assign a score of zero for the project. NOTE: by "executable" we mean a deployable artifact, a .war file to be more specific.
  3. if (script to generate unit test coverage information is missing) then STOP, assign a score of zero for the project.
  4. if (script to generate unit test coverage information fails) then STOP, assign a score of zero for the project.
  5. if (unit test coverage is less than 50%) then STOP, assign a score of zero for the project.
  6. if (executable) fails to deploy then STOP, assign a score of zero for the project.
  7. proceed with testing the project functionality, as described in the functional testing instructions.

NOTES

  • If you have a Maven-based project, then we can run Maven commands from the command line, you don't need to provide any other build script.
  • We are not going to test your project from within an IDE, whether Eclipse or something else.

Last update: Nov 1, 2016 Virgil Bistriceanu cs445 Computer Science

$Id: project-how-we-test.html,v 1.4 2016/11/02 04:11:50 virgil Exp $