gitlab-org--gitlab-foss/qa
Richard Clamp ce3b81b953 Add tests for mattermost login via oauth
* Adds Runtime::Scenario as a place to record the properties of the
  Scenario we're interested in.

* Adds a positional argument to Test::Integration::Mattermost to specify
  Runtime::Scenario.mattermost

* Adds Page::Mattermost::{Main,Login} to model the mattermost pages we
  need to interact with.

* Adds qa/features/mattermost/login_spec to perform a login via oauth
  and ensure we are logged in.
2017-10-30 14:48:40 +00:00
..
bin Remove legacy scripts for building docker images 2017-03-09 10:36:27 +01:00
qa Add tests for mattermost login via oauth 2017-10-30 14:48:40 +00:00
spec Add spec for QA::Scenario::Entrypoint 2017-10-25 07:59:49 +03:00
.gitignore Speed up GitLab QA docker image builds 2017-03-16 14:04:43 +01:00
.rspec
Dockerfile Use latest chrome and chrome driver in GitLab QA 2017-06-27 12:13:05 +02:00
Gemfile Add byebug to GitLab QA gem list for debugging 2017-10-03 22:42:49 -07:00
Gemfile.lock Update QA Nokogiri to 1.8.1 2017-10-05 11:54:05 +02:00
qa.rb Add tests for mattermost login via oauth 2017-10-30 14:48:40 +00:00
README.md Use the default password from the GDK's root user 2017-10-05 12:37:16 +02:00

GitLab QA - Integration tests for GitLab

This directory contains integration tests for GitLab.

It is part of the GitLab QA project.

What is it?

GitLab QA is an integration tests suite for GitLab.

These are black-box and entirely click-driven integration tests you can run against any existing instance.

How does it work?

  1. When we release a new version of GitLab, we build a Docker images for it.
  2. Along with GitLab Docker Images we also build and publish GitLab QA images.
  3. GitLab QA project uses these images to execute integration tests.

How can I use it?

You can use GitLab QA to exercise tests on any live instance! For example, the following call would login to a local GDK instance and run all specs in qa/specs/features:

bin/qa Test::Instance http://localhost:3000

Running specific tests

You can also supply specific tests to run as another parameter. For example, to test the EE license specs, you can run:

EE_LICENSE="<YOUR LICENSE KEY>" bin/qa Test::Instance http://localhost qa/ee

Overriding the authenticated user

Unless told otherwise, the QA tests will run as the default root user seeded by the GDK.

If you need to authenticate as a different user, you can provide the GITLAB_USERNAME and GITLAB_PASSWORD environment variables:

GITLAB_USERNAME=jsmith GITLAB_PASSWORD=password bin/qa Test::Instance https://gitlab.example.com

All supported environment variables are here.