Monthly Archives: November 2011

Python

django-pipelineの使い方

cssファイルやjsファイルをまとめて圧縮してくれる、django-pipelineの使い方です。ドキュメントで上手くいかなかった部分を少々アレンジしたので、メモを残しておきます。

js、cssファイルを簡単に圧縮できるDjango Compressorの使い方という記事を書きました。これも同じく圧縮のために使うモジュールです。個人的にはDjango Compressorの方が使いやすいと感じました。

read more »

Python

サーバーエラーでメールを送信する

Djangoでサーバーエラーが発生した場合に、エラー内容が記載されたメールを送信する方法です。「Django | Error reporting | Django documentation」のServer errorsというやつです。ただ、ちょっと付け加えないと動かなかったので、メモしておきます。
read more »

Python

django-noseで気になった点

django-noseを使っていたら、あるときから急に「AttributeError: 'function' object has no attribute 'im_class'」というエラーがでるようになってしまいました。調べてみると、どうやらテストとして認識されるクラスが「unittest.TestCase」を継承しておらず、メソッド名に「test」が含まれているスタティックなメソッドがある場合に発生していました。その他にも条件があるかもしれませんが、私の環境下では上記を満たしたら発生しました。
read more »

Python

django-noseを使ったユニットテスト

※使い方の部分にミスがあったので、修正しました。

先日「テスト用モジュールを分割する方法」というメモを書きましたが、より良さそうなやり方があるのを知りました。django-noseというパッケージを使うやり方です。

このdjango-noseというモジュールを使うと、init.pyにインポート文を書かなくてよかったり、クラス単位やメソッド単位でのテストも可能です。まだ導入したばかりですが、以下に手順のメモを残しておきます。

read more »

Python

テスト用モジュールを分割する方法

※ django-noseを使った方がよさそうです。django-noseを使ったユニットテスト

Djangoでstartappコマンドでアプリを作成したときに、アプリディレクトリの直下にtests.pyがというモジュールが自動的に作られます。ここにテストケースを書き、「python manage.py test アプリ名」コマンドを打つとテストを実施できます。しかし、アプリが大きいのに一つのモジュールに全テストケースをまとめると、ファイルサイズが大きくなりすぎてしまいます。なので、テストモジュールを分割する方法を調べました。
read more »