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
6b505fd3b6f816f8ff058710f127a9900e9233e496783ce08a0022814d224810
You can check the digest easily:
$ openssl dgst -sha256 ubuntu-16.04.5-desktop-amd64.iso
NOTE: the command above will take a while to complete since the .iso file
is quite large.
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 installs 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. Your instructions must ve *very* specific.
Testing Algorithm
-
If (build script or specific setup instructions are missing) then STOP,
assign a score of zero for the project.
-
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,
for example a .war file if the runtime environment is something like Tomcat.
-
If (script to generate unit test coverage information is missing) then STOP,
assign a score of zero for the project.
-
If (script to generate unit test coverage information fails) then STOP,
assign a score of zero for the project.
-
If (unit test coverage is less than 50%) then STOP, assign a score of zero
for the project.
-
If (executable) fails to deploy then STOP, assign a score of zero for the
project.
-
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 in order to build and deploy.
-
We are not going to test your project from within an IDE, whether Eclipse or
something else.
|