Continuous integration: Difference between revisions
From LimeSurvey Manual
No edit summary |
|||
(6 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
Continuous integration (CI) is the concept of running tests and checks on each push, to reduce different risks related to the development cycle. | Continuous integration (CI) is the concept of running tests and checks on each push, to reduce different risks related to the development cycle. | ||
== Motivation == | |||
* Be proactive rather than reactive | |||
* Identify hotspots for refactoring efforts | |||
* Reduce the risk of bugs and regressions | |||
Goal: Code quality is not allowed to decrease. | |||
== Parts == | |||
# Syntax check | |||
# PSR-12 | |||
# Type check | |||
# Unused variables | |||
# Tests | |||
## Unit tests | |||
## Functional tests (with fixture) | |||
## Integrity tests (with scripted browser) | |||
Todo: | |||
* Metrics | |||
* Test coverage | |||
* Code duplication | |||
== Tools == | == Tools == |
Latest revision as of 23:55, 10 October 2021
Continuous integration (CI) is the concept of running tests and checks on each push, to reduce different risks related to the development cycle.
Motivation
- Be proactive rather than reactive
- Identify hotspots for refactoring efforts
- Reduce the risk of bugs and regressions
Goal: Code quality is not allowed to decrease.
Parts
- Syntax check
- PSR-12
- Type check
- Unused variables
- Tests
- Unit tests
- Functional tests (with fixture)
- Integrity tests (with scripted browser)
Todo:
- Metrics
- Test coverage
- Code duplication
Tools
todo
Metrics
todo