Ghost/core/test/acceptance/README.md
Katharina Irrgang 75fbd272c9
Separated test env into: acceptance, regression and unit tests (#10411)
refs #9178

`yarn test` only runs acceptance and unit tests.
We will setup a cronjob in Travis and run the regression tests once per day.
You can manually run them with `yarn test:regression`

This separation is just a first step into the right direction.
Travis will no longer run for 10-13minutes.
The goal is to run common API use cases and unit tests in Travis and locally by default.

## After this separation we still need to:

- re-work our test utility
- remove some tests
- define which tests are our common API use cases
- rewrite some tests
- make testing easier (starting/stopping Ghost, fixtures and resetting services or event listeners, it's a pain and takes sometimes ages to fix tests)


---

**Acceptance:**
- common/basic API use cases against the current **stable** API

**Unit:**
- all unit tests (no database access)
- proper mocking

**Regression:**
- packages we don't want to run for each PR or commit
- tests which protect Ghost from breaking components and behaviour
- it is wishful that regression tests are using Ghost's API's (frontend, apps, core)

---

**This PR requires an update to our docs.**
2019-01-22 17:54:50 +01:00

587 B

Acceptance Tests

This folder should only contain a set of basic API use cases.

We are currently refactoring the test env. The "old" folder currently contains all API tests for the stable API version (v2). The goal is:

  • either keep a test if it's a basic use case e.g. upload an image, schedule a post, download a theme
  • otherwise move the test to regression api v2 tests

We probably need a differentiation for the acceptance tests for session and api_key authentication.

Before we move tests:

  • we have to re-work how are test utility is structured
  • we have to reduce tests