Skip to content

Latest commit

 

History

History
53 lines (30 loc) · 1.65 KB

TODO.md

File metadata and controls

53 lines (30 loc) · 1.65 KB

Test Annotations (done, document it):

@Test: Marks a method as a test case.
@BeforeEach and @AfterEach: Run before/after each test method for setup and teardown logic.
@BeforeAll and @AfterAll: Run once before/after all test methods in a class.
@Disabled: Disables a test, so it doesn't run.

Assertions:

Basic assertions: assertEquals(), assertTrue(), assertFalse(), assertNotNull(), etc.
Custom messages: Provide messages for failed assertions.
Exception assertions: Check that a method throws an expected exception using something like assertThrows().

Parameterized Tests:

Allow running the same test with different inputs using parameterized tests.

Test Execution Control:

Test ordering: Run tests in a specific or random order.
Timeouts: Limit the time a test can take before failing.

Test Suites:

Group tests together and run them as a suite.

Mocking and Stubbing:

Allow the creation of mock objects for isolating test cases.

Assertions on Collections:

Support for asserting conditions on collections (e.g., checking size, contents, etc.).

Integration with Build Tools:

Integration with tools like Gradle or Maven for running tests as part of the build process.

Test Result Reporting:

Detailed reports (e.g., console output, XML, or HTML reports) on test success, failure, and skipped tests.

Conditional Test Execution:

Run tests based on specific conditions (e.g., platform, configuration).

Test Discovery:

Automatic discovery of test classes and methods.

Assertions on Threads:

Support for testing multi-threaded code, with options for ensuring certain conditions are met across threads.