diff options
author | Jon Marius Venstad <venstad@gmail.com> | 2020-01-16 15:19:51 +0100 |
---|---|---|
committer | Jon Marius Venstad <venstad@gmail.com> | 2020-01-16 15:19:51 +0100 |
commit | bcb8b29b2d6690054f921bb2ebfbefa1fcfec1ec (patch) | |
tree | b7b93ea62f12a281e115e544b5a544232df556ca /tenant-cd/src/main/java | |
parent | d14d26265ef5719264fd9793bee98a90a84f70ce (diff) |
Add StagingSetup annotation
Diffstat (limited to 'tenant-cd/src/main/java')
4 files changed, 10 insertions, 51 deletions
diff --git a/tenant-cd/src/main/java/ai/vespa/hosted/cd/IntegrationTest.java b/tenant-cd/src/main/java/ai/vespa/hosted/cd/IntegrationTest.java index a8c8d958cc1..f9dc15df32e 100644 --- a/tenant-cd/src/main/java/ai/vespa/hosted/cd/IntegrationTest.java +++ b/tenant-cd/src/main/java/ai/vespa/hosted/cd/IntegrationTest.java @@ -16,7 +16,7 @@ import static java.lang.annotation.RetentionPolicy.RUNTIME; /** * Tests which run against a fully operational Vespa deployment to verify its behaviour. * - * Examples of integration test types are {@link SystemTest}, {@link StagingTest} and {@link ProductionTest}. + * Examples of integration test types are {@link SystemTest}, {@link StagingSetup}, {@link StagingTest}, and {@link ProductionTest}. * * @author jonmv */ diff --git a/tenant-cd/src/main/java/ai/vespa/hosted/cd/ProductionTest.java b/tenant-cd/src/main/java/ai/vespa/hosted/cd/ProductionTest.java index a60a8ea0e14..220d0cbd6bb 100644 --- a/tenant-cd/src/main/java/ai/vespa/hosted/cd/ProductionTest.java +++ b/tenant-cd/src/main/java/ai/vespa/hosted/cd/ProductionTest.java @@ -14,13 +14,8 @@ import static java.lang.annotation.RetentionPolicy.RUNTIME; /** * Tests that verify the health of production deployments of Vespa applications. * - * These tests are typically run some time after deployment to a production zone, to ensure - * the deployment is still healthy and working as expected. When these tests fail, deployment - * of the tested change is halted until it succeeds, or is superseded by a remedying change. - * - * A typical production test is to verify that a set of metrics, measured by the Vespa - * deployment itself, are within specified parameters, or that some higher-level measure - * of quality, such as engagement among end users of the application, is as expected. + * Test classes annotated with this annotation are run during declared production tests. + * See <a href="https://cloud.vespa.ai/automated-deployments.html#production-tests">Vespa cloud documentation</a>. * * @author jonmv */ @@ -28,10 +23,4 @@ import static java.lang.annotation.RetentionPolicy.RUNTIME; @Retention(RUNTIME) @IntegrationTest @Tag("production") -public @interface ProductionTest { - - // Want to verify metrics (Vespa). - // Want to verify external metrics (YAMAS, other). - // May want to verify search gives expected results. - -} +public @interface ProductionTest { } diff --git a/tenant-cd/src/main/java/ai/vespa/hosted/cd/StagingTest.java b/tenant-cd/src/main/java/ai/vespa/hosted/cd/StagingTest.java index 93a5780da25..4ecc3ce5722 100644 --- a/tenant-cd/src/main/java/ai/vespa/hosted/cd/StagingTest.java +++ b/tenant-cd/src/main/java/ai/vespa/hosted/cd/StagingTest.java @@ -14,15 +14,9 @@ import static java.lang.annotation.RetentionPolicy.RUNTIME; /** * Tests that assert continuity of behaviour for Vespa application deployments, through upgrades. * - * These tests are run whenever a change is pushed to a Vespa application, and whenever the Vespa platform - * is upgraded, and before any deployments to production zones. When these tests fails, the tested change to - * the Vespa application is not rolled out. - * - * A typical upgrade test is to do some operations against a test deployment prior to upgrade, like feed and - * search for some documents, perhaps recording some metrics from the deployment, and then to upgrade it, - * repeat the exercise, and compare the results from pre and post upgrade. - * - * TODO Split in platform upgrades and application upgrades? + * Test classes annotated with this annotation are run in the second phase of automated staging tests, + * to verify the upgraded deployment. + * See <a href="https://cloud.vespa.ai/automated-deployments.html#staging-tests">Vespa cloud documentation</a>. * * @author jonmv */ @@ -31,8 +25,4 @@ import static java.lang.annotation.RetentionPolicy.RUNTIME; @IntegrationTest @Tag("staging") public @interface StagingTest { - - // Want to verify documents are not damaged by upgrade. - // May want to verify metrics during upgrade. - } diff --git a/tenant-cd/src/main/java/ai/vespa/hosted/cd/SystemTest.java b/tenant-cd/src/main/java/ai/vespa/hosted/cd/SystemTest.java index ccaf0765768..4712c1b41ef 100644 --- a/tenant-cd/src/main/java/ai/vespa/hosted/cd/SystemTest.java +++ b/tenant-cd/src/main/java/ai/vespa/hosted/cd/SystemTest.java @@ -16,13 +16,8 @@ import static java.lang.annotation.RetentionPolicy.RUNTIME; /** * Tests that compare the behaviour of a Vespa application deployment against a fixed specification. * - * These tests are run whenever a change is pushed to a Vespa application, and whenever the Vespa platform - * is upgraded, and before any deployments to production zones. When these tests fails, the tested change to - * the Vespa application is not rolled out. - * - * A typical system test is to feed some documents, optionally verifying that the documents have been processed - * as expected, and then to see that queries give the expected results. Another common use is to verify integration - * with external services. + * Test classes annotated with this annotation are run against a fresh deployment during automated system tests. + * See <a href="https://cloud.vespa.ai/automated-deployments.html#system-tests">Vespa cloud documentation</a>. * * @author jonmv */ @@ -30,19 +25,4 @@ import static java.lang.annotation.RetentionPolicy.RUNTIME; @Retention(RUNTIME) @IntegrationTest @Tag("system") -public @interface SystemTest { - - // Want to feed some documents. - // Want to verify document processing and routing is as expected. - // Want to check recall on those documents. - // Want to verify queries give expected documents. - // Want to verify searchers. - // Want to verify updates. - // Want to verify deletion. - // May want to verify reprocessing. - // Must likely delete documents between tests. - // Must be able to feed documents, setting route. - // Must be able to search. - // Must be able to visit. - -} +public @interface SystemTest { } |