tree: 2f6457671b25827c4709b58c31ca72e91f378e48 [path history] [tgz]
  1. src/
  2. pom.xml
  3. Readme.md
chop/integ/Readme.md

What's this for?

Testing in the EC2 environment gets to be tedious after a while. We should not have to deploy and test basic runner coordinator interactions manually in the EC2 environment which takes time and is error prone.

We want to make sure that some interaction tests are always tested beforehand and guarranteed to function properly between runners and the coordinator in the webapp project.

To do this properly we need to use the runner jar produced from the example project, and have it run along side the executable jar from the webapp project that contains the coordinator. Doing this in the existing project modules causes a headache because the executable jars must be generated then used across at least two separate projects. This also creates cyclic module dependencies which maven will complain about.

This is the reason we chose to do these tests in a separate module that can start multiple runners produced from the example project with its chop tests, and the webapp project which contains the coordinator.

Optionally if the right properties are enabled, this module will attempt to actually create a stack on EC2 to run the application. The example project does not need this however this functionality can be tested if a valid Amazon account is active, if not then the test will not bomb out, but will pass. If the Amazon account and credentials are available then an example stack will be created and tested for correct creation and destruction.