Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gitlab-ce
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
1
Merge Requests
1
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
gitlab-ce
Commits
629d966c
Commit
629d966c
authored
Jan 02, 2018
by
Grzegorz Bizon
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Extend documentation on end-to-end integration tests
parent
1f50eb4f
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
42 additions
and
9 deletions
+42
-9
doc/development/testing_guide/end_to_end_tests.md
doc/development/testing_guide/end_to_end_tests.md
+40
-7
doc/development/testing_guide/index.md
doc/development/testing_guide/index.md
+2
-2
No files found.
doc/development/testing_guide/end_to_end_tests.md
View file @
629d966c
...
@@ -20,23 +20,56 @@ You can find these nightly pipelines at [GitLab QA pipelines page][gitlab-qa-pip
...
@@ -20,23 +20,56 @@ You can find these nightly pipelines at [GitLab QA pipelines page][gitlab-qa-pip
### Testing code in merge requests
### Testing code in merge requests
It is also possible to trigger packages build and
[
GitLab QA pipeline
][
gitlab-qa-pipelines
]
It is also possible to trigger build of GitLab packages and then pass these
using a manual action that should be present in the merge request widget on
package to GitLab QA to run tests in a
[
pipeline
][
gitlab-qa-pipelines
]
.
your merge request. Look for
`package-qa`
manual action.
Developers can trigger a
`package-qa`
manual action, that should be present in
the merge request widget in your merge request.
It is possible to trigger Gitlab QA pipeline from merge requests in GitLab CE
and GitLab EE, but QA triggering manual action is also available in the Omnibus
GitLab project as well.
Below you can read more about how to use it and how does it work.
Below you can read more about how to use it and how does it work.
## How does it work?
#### How does it work?
Currently, we are _multi-project pipeline_-like approach to run QA pipelines.
1.
Developer triggers manual action in the CE or EE merge request, that starts
a chain of pipelines.
1.
Triggering this action enqueues a new CI job that is going to be picked by a
runner.
1.
The script, that is being executed, triggers a pipeline in GitLab Omnibus
projects, and waits for the resulting status. We call it _status attribution_.
1.
GitLab packages are being built in the pipeline started in Omnibus. Packages
are going to be sent to Container Registry.
1.
When packages are ready, and available in the registry, a final step in the
pipeline that is now running in Omnibus triggers a new pipeline in the GitLab
QA project. It also waits for the resulting status.
1.
GitLab QA pulls images from the registry, spins-up containers and runs tests
against test environment that has been just orchestrated.
1.
The result of GitLab QA pipeline is being propagated upstream, through
Omnibus, to CE / EE merge request.
We are using _multi-project pipelines_ to run end-to-end tests.
#### How do I write tests?
## How do I test my code?
In order to write new tests, you first need to learn more about GitLab QA
architecture. There is some documentation about it in GitLab QA project
[
here
][
gitlab-qa-architecture
]
.
## How do I contribute?
Once you decided we to put test environment orchestration scenarios and
instance specs, take a looks at
[
relevant documentation
][
instance-qa-readme
]
## Where can I ask for help?
## Where can I ask for help?
You can ask question in
`#qa`
channel on Slack (GitLab internal) or you can
find an issue you would like to work on in
[
the issue tracker
][
gitlab-qa-issues
]
and start a new discussion there.
[
omnibus-gitlab
]:
https://gitlab.com/gitlab-org/omnibus-gitlab
[
omnibus-gitlab
]:
https://gitlab.com/gitlab-org/omnibus-gitlab
[
gitlab-qa
]:
https://gitlab.com/gitlab-org/gitlab-qa
[
gitlab-qa
]:
https://gitlab.com/gitlab-org/gitlab-qa
[
gitlab-qa-pipelines
]:
https://gitlab.com/gitlab-org/gitlab-qa/pipelines
[
gitlab-qa-pipelines
]:
https://gitlab.com/gitlab-org/gitlab-qa/pipelines
[
instance-qa-readme
]:
https://gitlab.com/gitlab-org/gitlab-ce/tree/master/qa/README.md
[
gitlab-qa-architecture
]:
https://gitlab.com/gitlab-org/gitlab-qa/blob/master/docs/architecture.md
[
gitlab-qa-issues
]:
https://gitlab.com/gitlab-org/gitlab-qa/issues
doc/development/testing_guide/index.md
View file @
629d966c
...
@@ -67,8 +67,8 @@ Everything you should know about how to test Rake tasks.
...
@@ -67,8 +67,8 @@ Everything you should know about how to test Rake tasks.
## [End-to-end tests](end_to_end_tests.md)
## [End-to-end tests](end_to_end_tests.md)
Everything you should know about how to run end-to-end tests
, also known as
Everything you should know about how to run end-to-end tests
using
[
GitLab QA
][
gitlab-qa
]
test
s
.
[
GitLab QA
][
gitlab-qa
]
test
ing framework
.
---
---
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment