Recall & Review
beginner
Why do we use a separate test database when testing a Flask app?
We use a separate test database to keep test data isolated from real data. This prevents tests from changing or deleting important information and allows tests to run safely and repeatedly.
Click to reveal answer
intermediate
What is the purpose of the Flask `app.app_context()` during database testing?
The `app.app_context()` provides the application context needed to access Flask's current app and database. It ensures database operations work correctly during tests outside normal request handling.
Click to reveal answer
intermediate
How does using `setUp` and `tearDown` methods help in database testing?
The `setUp` method prepares a fresh test database before each test, and `tearDown` cleans up after the test. This keeps tests independent and avoids leftover data affecting other tests.
Click to reveal answer
beginner
What is a common way to reset the database state between tests in Flask?
A common way is to drop all tables and recreate them before each test. This ensures each test starts with a clean database.
Click to reveal answer
beginner
Why might you use an in-memory SQLite database for testing in Flask?
An in-memory SQLite database is fast and temporary. It exists only during the test run, so tests run quickly and leave no files behind.
Click to reveal answer
What does the Flask `app.app_context()` provide during database tests?
✗ Incorrect
The app context allows tests to access the Flask app and database correctly outside normal requests.
Why should tests use a separate test database?
✗ Incorrect
Using a separate test database keeps test data isolated and safe from affecting real data.
Which method is commonly used to prepare the database before each test?
✗ Incorrect
The setUp method sets up a fresh database state before each test.
What is a benefit of using an in-memory SQLite database for tests?
✗ Incorrect
In-memory SQLite databases are fast and disappear after tests finish.
What does the `tearDown` method do in database testing?
✗ Incorrect
tearDown cleans the database to keep tests independent.
Explain how to set up and clean a test database in Flask tests.
Think about preparing and resetting the database for each test.
You got /4 concepts.
Why is isolation important in database testing and how do Flask tests achieve it?
Consider how tests stay independent and safe.
You got /4 concepts.