Add E2E test of instance audit event streaming
Description of the test
E2E test of instance audit event streaming: gitlab-org/quality/testcases#4080 (closed)
- Includes
QA::EE::Resource::InstanceAuditEventExternalDestination
to wrap the GraphQL API for instance audit event streaming destinations - Allow Smocker to be used via a non-loopback IP address
- Tests a few audit event types (more comprehensive cover at lower test levels)
Note: The new resource isn't removed by the test resources handler because it doesn't handle GraphQL yet.
How to set up and validate locally
From the qa
directory:
bundle install
bundle exec bin/qa Test::Instance::All http://gdk.test:3000 -- qa/specs/features/ee/api/10_govern/instance_audit_event_streaming_spec.rb
Checklist
-
Confirm the test has a testcase:
tag linking to an existing test case in the test case project. - [-] Note if the test is intended to run in specific scenarios. If a scenario is new, add a link to the MR that adds the new scenario.
-
Follow the end-to-end tests style guide and best practices. -
Use the appropriate RSpec metadata tag(s). - Most resources will be cleaned up via the general cleanup task. Check that is successful, or ensure resources are cleaned up in the test:
-
New resources have api_get_path
andapi_delete_path
implemented if possible. -
If any resource cannot be deleted in the general delete task, make sure it is ignored. -
If any resource cannot be deleted in the general delete task, remove it in the test (e.g., in an after
block).
-
-
Ensure that no transient bugs are hidden accidentally due to the usage of waits
andreloads
. -
Verify the tags to ensure it runs on the desired test environments. - [-] If this MR has a dependency on another MR, such as a GitLab QA MR, specify the order in which the MRs should be merged.
- [-] (If applicable) Create a follow-up issue to document the special setup necessary to run the test: ISSUE_LINK
-
If the test requires an admin's personal access token, ensure that the test passes on your local environment with and without the GITLAB_QA_ADMIN_ACCESS_TOKEN
provided.
Edited by Mark Lapierre