Recall & Review
beginner
What is the purpose of lifecycle hooks in JUnit testing?
Lifecycle hooks in JUnit manage setup and teardown tasks to prepare the test environment before tests run and clean up after tests finish. This ensures tests run independently and reliably.
Click to reveal answer
beginner
Name two common lifecycle hooks in JUnit and their roles.
Common lifecycle hooks are @BeforeEach, which runs setup code before each test, and @AfterEach, which runs teardown code after each test to reset the environment.
Click to reveal answer
beginner
Why is it important to use teardown methods after tests?
Teardown methods clean up resources like files or database connections to prevent side effects on other tests, keeping tests independent and reliable.
Click to reveal answer
intermediate
How do lifecycle hooks improve test reliability?
By running setup and teardown automatically, lifecycle hooks ensure each test starts fresh and ends clean, avoiding leftover data or states that could cause test failures.
Click to reveal answer
intermediate
Explain the difference between @BeforeAll and @BeforeEach in JUnit.
@BeforeAll runs once before all tests in a class, useful for expensive setup. @BeforeEach runs before every test method, preparing a clean state for each test.
Click to reveal answer
Which JUnit annotation is used to run setup code before each test method?
✗ Incorrect
@BeforeEach runs setup code before every test method to prepare the test environment.
What is the main reason to use teardown methods in tests?
✗ Incorrect
Teardown methods clean up resources and reset the environment to keep tests independent and avoid side effects.
Which lifecycle hook runs once before all tests in a JUnit test class?
✗ Incorrect
@BeforeAll runs once before all tests, useful for expensive setup shared by all tests.
What happens if you don't use teardown methods after tests?
✗ Incorrect
Without teardown, leftover data or open resources can cause tests to affect each other, leading to unreliable results.
Why is it better to use lifecycle hooks instead of manual setup and cleanup inside each test?
✗ Incorrect
Lifecycle hooks centralize setup and teardown, reducing repeated code and mistakes, making tests easier to maintain.
Describe how lifecycle hooks in JUnit help manage setup and teardown for tests.
Think about what happens before and after each test method.
You got /5 concepts.
Explain the difference between @BeforeEach and @BeforeAll annotations in JUnit and when to use each.
Consider how often the setup code needs to run.
You got /4 concepts.