I've a RESTFul microservice written in Grails. This microservice has it's own DB. It also depends on two other microservices.
A typical workflow of the service is:
- Receives a GET request from a client e.g. browser
- Calls another microservice through http to get some information
- Queries it's own DB to get some data
- Send a response to the client
I want to write automated tests for this service. Whenever I'll run the test, it'll do the following:
- Mock the external microservices
- Create a database and populate it with test data
- Run the application and configure it to use the mock services and DB
- Run the test cases by sending http requests and matching responses
My question is: What type of test is this?
I'm not a QA so may be I'm asking a stupid question.