diff --git a/app/main/views/index.py b/app/main/views/index.py index 642876962..bd70df9e6 100644 --- a/app/main/views/index.py +++ b/app/main/views/index.py @@ -100,3 +100,8 @@ def email_template(): @main.route('/documentation') def documentation(): abort(410) + + +@main.route('/integration_testing') +def integration_testing(): + return render_template('views/integration_testing.html') diff --git a/app/templates/admin_template.html b/app/templates/admin_template.html index cfb6b2486..61ba5410a 100644 --- a/app/templates/admin_template.html +++ b/app/templates/admin_template.html @@ -110,6 +110,7 @@ ] %}
  • {{ language }} client
  • {% endfor %} +
  • Integration testing
  • diff --git a/app/templates/views/integration_testing.html b/app/templates/views/integration_testing.html new file mode 100644 index 000000000..57039e382 --- /dev/null +++ b/app/templates/views/integration_testing.html @@ -0,0 +1,76 @@ +{% extends "withoutnav_template.html" %} + +{% block page_title %} + Integration testing - GOV.UK Notify +{% endblock %} + +{% block maincolumn_content %} + +
    +
    +

    Integration testing

    + +

    + Service teams should do all their testing within the GOV.UK Notify production environment (https://api.notifications.service.gov.uk). +

    +

    + You don’t need different Notify accounts or access to other Notify environments. Instead, there are different types of API key that let you do functional or performance integration testing. +

    + +

    API Keys

    +

    + The 3 types of API key that you can create within GOV.UK Notify are: +

    + + +

    Live key

    +

    + Once your service is live you are able to create Live keys. You can then use these key to send messages to anyone. +

    +

    + Messages sent with a live key show up on your dashboard and count against your text message and email allowances. +

    +

    + You should plan to rotate these keys on a regular basis. You may have more than one active key at a time. To revoke the key simply click the revoke button on the API Key page. +

    + +

    Team key

    +

    + Use a team key for end-to-end functional testing. +

    +

    + A team key lets you send real messages to members of your team (and addresses/numbers that you have added to your whitelist). You will get an error if you use these keys to send messages to anyone else. +

    +

    + Messages sent with a team key show up on your dashboard and count against your text message and email allowances. +

    + +

    Test key

    +

    + Use a test key to test the performance of your service and its integration with GOV.UK Notify under load. +

    +

    + A test key doesn’t send real messages but generates realistic responses. There’s no restriction on who you can send to or how many messages you can send per day. +

    +

    + Messages sent using a test key don’t show up on your dashboard or count against your text message and email allowances. +

    +

    + By default, all messages sent with a test key will result in a delivered status. +

    +

    + If you want to test failure statuses with a test key, use the following phone numbers and email addresses: + +

  • "07700900003" => temporary failure
  • +
  • "07700900002" => permanent failure
  • +
  • "temp-fail@simulator.notify" => temporary failure
  • +
  • "perm-fail@simulator.notify" => permanent failure
  • +

    +
    +
    + +{% endblock %} diff --git a/tests/app/main/views/test_index.py b/tests/app/main/views/test_index.py index 604825b57..dd4c867d0 100644 --- a/tests/app/main/views/test_index.py +++ b/tests/app/main/views/test_index.py @@ -18,7 +18,7 @@ def test_logged_in_user_redirects_to_choose_service(app_, @pytest.mark.parametrize('view', [ - 'cookies', 'trial_mode', 'pricing', 'terms', 'delivery_and_failure' + 'cookies', 'trial_mode', 'pricing', 'terms', 'delivery_and_failure', 'integration_testing' ]) def test_static_pages(app_, view): with app_.test_request_context(), app_.test_client() as client: