mirror of
https://github.com/spring-projects/spring-boot.git
synced 2024-08-29 03:06:45 +08:00
Clarify docs on effect RANDOM_PORT or DEFINED_PORT has on transactions
Previously, when read too quickly, the current note may lead a user to think that RANDOM_PORT or DEFINED_PORT directly affect transaction management. This is not the case. This commit attempts to clarify that the difference in transaction behaviour is due to transactions being bound to a particular thread and separate threads being used for the client and server when tests are making HTTP requests. Closes gh-9965
This commit is contained in:
parent
9f9cef1e6b
commit
c9faefc562
@ -5357,9 +5357,10 @@ how your tests will run:
|
||||
_any_ servlet environment (mock or otherwise).
|
||||
|
||||
NOTE: If your test is `@Transactional`, it will rollback the transaction at the end of
|
||||
each test method by default. If you're using this arrangement in combination with either
|
||||
`RANDOM_PORT` or `DEFINED_PORT`, any transaction initiated on the server won't rollback as
|
||||
the test is running in a different thread than the server processing.
|
||||
each test method by default. However, as using this arrangement with either `RANDOM_PORT`
|
||||
or `DEFINED_PORT` implicitly provides a real servlet environment, HTTP client and
|
||||
server will run in separate threads, thus separate transactions. Any transaction
|
||||
initiated on the server won't rollback in this case.
|
||||
|
||||
NOTE: In addition to `@SpringBootTest` a number of other annotations are also
|
||||
provided for testing more specific slices of an application. See below for details.
|
||||
|
Loading…
Reference in New Issue
Block a user