36 lines
1.5 KiB
Markdown
36 lines
1.5 KiB
Markdown
|
# API Test Categories
|
||
|
|
||
|
This guide describes the categorization of tests.
|
||
|
|
||
|
## Method Tests
|
||
|
|
||
|
A `method` test is the `apitest` analog of a unit test. It tests a single API method such as `getbalance`, but is not
|
||
|
considered a unit test because the code execution path traverses so many layers: from `gRPC` client -> `gRPC` server
|
||
|
side service -> one or more Bisq `core` services, and back to the client.
|
||
|
|
||
|
Method tests have direct access to `gRPC` client stubs, and test asserts are made directly on `gRPC` return values --
|
||
|
Java Objects.
|
||
|
|
||
|
All `method` tests are part of the `bisq.apitest.method` package.
|
||
|
|
||
|
## Scenario Tests
|
||
|
|
||
|
A `scenario` test is a narrow or broad functional test case covering a simple use case such as funding a wallet to a
|
||
|
complex series of trades. Generally, a scenario test case requires multiple `gRPC` method calls.
|
||
|
|
||
|
Scenario tests have direct access to `gRPC` client stubs, and test asserts are made directly on `gRPC` return values --
|
||
|
Java Objects.
|
||
|
|
||
|
All `scenario` tests are part of the `bisq.apitest.scenario` package.
|
||
|
|
||
|
## End to End Tests
|
||
|
|
||
|
An end to end (`e2e`) test can cover a narrow or broad use case, and all client calls go through the `CLI` shell script
|
||
|
`bisq-cli`. End to end tests do not have access to `gRPC` client stubs, and test asserts are made on what the end
|
||
|
user sees on the console -- what`gRPC CLI` prints to `STDOUT`.
|
||
|
|
||
|
As test coverage grows, stable scenario test cases should be migrated to `e2e` test cases.
|
||
|
|
||
|
All `e2e` tests are part of the `bisq.apitest.e2e` package.
|
||
|
|