---
title: "Django におけるテスト"
version: 6.0
locale: ja
source: https://docs.djangoproject.com/ja/6.0/topics/testing/
canonical: https://djangodocs.dev/ja/6.0/topics/testing/
---
# Django におけるテスト

自動化テストは、モダンなウェブ開発者にとってバグを殺すために非常に役に立つツールです。テストのコレクション、**test suite** を使うことで、次のような数々の問題を解決したり避けることができます。

- 新しいコードを書いている時、テストを使えば、自分が書いたコードが期待通りに動作するかどうか確かめることができる。
- 古いコードのリファクタリングや修正をしている時、テストを使うことで、自分の行った変更が思ってもないような仕方でアプリケーションの動作を変更してしまわないことを保証できる。

ウェブアプリケーションのテストは複雑なタスクです。なぜなら、ウェブアプリケーションには複数のロジックのレイヤーが存在するからです。HTTP レベルのリクエストのハンドリングから、フォームの検証と処理、テンプレートのレンダリングなどです。しかし、Django のテスト実行フレームワークと各種ユーティリティを使えば、リクエストをシミュレートしたり、テストデータを挿入したり、アプリケーションの出力を検査したり、さらに一般に、書いたコードが期待通りの動作をするかどうかを検証できます。

The preferred way to write tests in Django is using the [`unittest`](https://docs.python.org/3/library/unittest.html#module-unittest) module
built-in to the Python standard library. This is covered in detail in the
[テストを書いて実行する](/ja/6.0/topics/testing/overview/) document.

You can also use any *other* Python test framework; Django provides an API and
tools for that kind of integration. They are described in the
[ほかのテストフレームワークを使う](/ja/6.0/topics/testing/advanced/#other-testing-frameworks) section of [テストに関する高度なトピック](/ja/6.0/topics/testing/advanced/).

- [テストを書いて実行する](/ja/6.0/topics/testing/overview/)
- [テストツール](/ja/6.0/topics/testing/tools/)
- [テストに関する高度なトピック](/ja/6.0/topics/testing/advanced/)
