These guidelines are a work in progress. While most of this document should be treated as suggestions, there is one concept that should not be broken:
State should not be shared between tests. The order tests are executed should not impact the outcome of individual tests.
Without this guarantee, tests cannot be run in parallel, and modifications to an individual test could impact the entire suite. There is almost always a design modification that can be made to avoid this being necessary.
The rest are guidelines and not absolutes. There are exceptions to every rule, and they can be discussed during code review.