summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAchilleas Pipinellis <axil@gitlab.com>2019-03-28 09:25:46 +0000
committerAchilleas Pipinellis <axil@gitlab.com>2019-03-28 09:25:46 +0000
commitd119fd493f03c42b817b2d2ce1b5bf448f741f85 (patch)
tree772a9896bbce25d112deb3e3360c33036f06e9dc
parent1ab4d12aae9897e48df054a7c58944c5c73a2759 (diff)
parent127828c64aaefcb9da05464b9ceed0149643c835 (diff)
downloadgitlab-ce-d119fd493f03c42b817b2d2ce1b5bf448f741f85.tar.gz
Merge branch 'zm-test-plan-refs' into 'master'
Update testing guide to reference test design See merge request gitlab-org/gitlab-ce!26619
-rw-r--r--doc/development/testing_guide/best_practices.md15
-rw-r--r--doc/development/testing_guide/index.md2
2 files changed, 16 insertions, 1 deletions
diff --git a/doc/development/testing_guide/best_practices.md b/doc/development/testing_guide/best_practices.md
index cfe0e6f70fc..7262c04d746 100644
--- a/doc/development/testing_guide/best_practices.md
+++ b/doc/development/testing_guide/best_practices.md
@@ -1,5 +1,20 @@
# Testing best practices
+## Test Design
+
+Testing at GitLab is a first class citizen, not an afterthought. It's important we consider the design of our tests
+as we do the design of our features.
+
+When implementing a feature, we think about developing the right capabilities the right way, which helps us
+narrow our scope to a manageable level. When implementing tests for a feature, we must think about developing
+the right tests, but then cover _all_ the important ways the test may fail, which can quickly widen our scope to
+a level that is difficult to manage.
+
+Test heuristics can help solve this problem. They concisely address many of the common ways bugs
+manifest themselves within our code. When designing our tests, take time to review known test heuristics to inform
+our test design. We can find some helpful heuristics documented in the Handbook in the
+[Test Design](https://about.gitlab.com/handbook/engineering/quality/guidelines/test-engineering/test-design/) section.
+
## Test speed
GitLab has a massive test suite that, without [parallelization], can take hours
diff --git a/doc/development/testing_guide/index.md b/doc/development/testing_guide/index.md
index 67e4cfeda0e..ecad9ba48a3 100644
--- a/doc/development/testing_guide/index.md
+++ b/doc/development/testing_guide/index.md
@@ -33,7 +33,7 @@ changes should be tested.
## [Testing best practices](best_practices.md)
-Everything you should know about how to write good tests: RSpec, FactoryBot,
+Everything you should know about how to write good tests: Test Design, RSpec, FactoryBot,
system tests, parameterized tests etc.
---