DjangoでコードテストをViewクラスに対して行う
基本的なコードの書き方は同じだが、Viewの場合は、URL経由でおこなう必要がある。 テストコードの基本的な書き方は、こちらを参照 https://tech.tokiraku.com/archives/82 REST APIでおこなっていることを前提とした例は次のようになる。 GETメソッド from django.test import TestCase,Client def test_Test…
基本的なコードの書き方は同じだが、Viewの場合は、URL経由でおこなう必要がある。 テストコードの基本的な書き方は、こちらを参照 https://tech.tokiraku.com/archives/82 REST APIでおこなっていることを前提とした例は次のようになる。 GETメソッド from django.test import TestCase,Client def test_Test…
Djangoで用意されているコードテストの方法。 コードの準備 任意の場所にテスト用のディレクトリを作成し、初期化用のファイルを作成する。作成するファイルの中身は空でよい。 __init__.py このファイルがないと、テストが実行されない。 テストコードを記述するファイル。 接頭辞に「test_」を入れたファイルを作成する。接頭辞がないと、テストの対象とは認識されない。 test_[..…
setting.pyへの設定追加 Djangoの setting.py に下記のコードを設定する。※CACHESは初期状態から存在していることがあるので、ある場合には上書きする。 # redis CACHES = { 'default': { 'BACKEND': 'django_redis.cache.RedisCache', 'LOCAT…
設定テンプレート 下記内容を、 settings.py に記述する。 #ログ出力 LOGGING = { 'version': 1, # これを設定しないと怒られる 'formatters': { # 出力フォーマットを文字列形式で指定する 'all': { # 出力フォーマットに`all`という名前をつける 'format': &#…
アプリケーションなどで、開発環境や本番環境で、設定情報が変更されるようなものは、ハードコードしたくないので、外部から参照できる設定ファイルにしておきたい。その時に、Dockerの環境変数として設定できると嬉しい。 Dockerの環境変数設定 docker-compose.xml のプロパティとして、 env_file がある。ここに、環境変数設定をおこなうことが可能となる。 <例>: env…
Docker上で、Djangoプロジェクトを実行する際、 docker-compose.yaml にコマンドを記載する方法もあるが、その方法だと、不都合が生じる場合がある。 その不都合とは、awsなどの実稼働環境に載せた場合に、コンテナ定義がdocker-composeではなくなってしまうため、コンテナの起動と同時にDjangoプロジェクトが起動しない。 そのため、シェルプログラムなどに実行時のコ…
docker-composeファイルのテンプレート version: '3' services: app: build: . volumes: - .:/app ports: - 9000:8080 networks: - external.group networks: external.group: external: true Dockerfileのテンプレート FROM p…
IT系のシステムエンジニアは、世の中にたくさん増えているが、会社内にまだまだ体制自体が整っていないことが多いです。 ぼく自身もそういった会社でたくさん働いています。 その時に、どういうことをしないといけないと思ったのかを残しておきます。 今回は現場についてです。 想定される状況 ぼくが置かれていた状況ともいえるが、大体、正規のエンジニアひとりか二人なのではないかと思います。 それ以外は、必要に応じ…
docker-composeファイルのテンプレート version: '3' services: app: build: . volumes: - .:/code ports: - '3000:3000' networks: - external.group networks: external.group: external: true Dockerfileのテン…
docker-composeファイルのテンプレート version: '3' services: redis: image: redis:7.0.4 ports: - 6379:6379 volumes: - ./data:/data networks: - external.group networks: external.group: external: true Docker…
docker-composeファイルのテンプレート version: '3' services: web: build: . volumes: - .:/code tty: true ports: - 8000:8000 networks: - external.group networks: external.group: external: true Dockerfileのテン…
テンプレート version: '3' services: # MySQL db: image: mysql:5.7 container_name: mysql_base environment: MYSQL_ROOT_PASSWORD: root MYSQL_DATABASE: test_database MYSQL_USER: docker MYSQL_PASSWORD: do…