PyAgile

テスト結果通知のアイディア

Mac限定で、growlという通知ツールがあって結構便利。 テスト結果をここに出したい。 py.testで考えてみたけどテスト結果をフックする方法が見当たらない。 noseにはplugin機構があって、テストレポートもプラッガブルにできるようだ。 growlへの通知自体はg…

とりあえずここで書いてた分*1をマージしました. http://aodagx.ddo.jp/aodag/translation/test_ja.html *1:2.10 テスト実行順序 まで

2.10 テストの実行順序

通常はファイル中に記述された順にテストを実行する。 しかし、テストは他のテストの後に実行されることを前提とすべきではない。 こうしてしまうと、より進歩した使い方を妨げることになる。 例えば分散的にテストしたり、選択的にテストしたり、"loopuonfa…

そろそろ

http://aodagx.ddo.jp/aodag/translation/test_ja.html reSt形式にまとめていきます。

2.9 print文でのデバッグ

http://codespeak.net/py/dist/test.html#debug-with-the-print-statement通常は、py.testはそれぞれのテストが実行中に、標準出力と標準エラー出力に書き出す内容をキャッシュする。 この出力は、テストが失敗したときだけ画面に表示される。 そうでない場…

2.8 コマンドラインユーティリティと衝突しない

http://codespeak.net/py/dist/test.html#no-interference-with-cmdline-utilities py.testは主にコマンドラインツールとして用いられる。 複数のテストを同じファイルに書いて、コマンドラインで簡単に実行できる。自信なし

2.7 即座にテストする

http://codespeak.net/py/dist/test.html#testing-starts-immediately テスト収集プロセスで最初のテストを発見したら即座にテストを開始する。 収集プロセスは反復的で、最初のテストの実行が完璧に行われることを要求しない。

2.6 バージョンが異なる複数のPythonでテストする

http://codespeak.net/py/dist/test.html#testing-with-multiple-python-versions-executables --exec=EXECUTABLE で実際にテストするPython(例えばpython2.1など)を選択できる。

2.5 キーワードでテストを選択する

http://codespeak.net/py/dist/test.html#selecting-tests-by-keywordコマンドラインで指定したキーワードで選択したテストを実行可能だ。 例: py.test -k test_simple この例ではカレントディレクトリ以下の全てのテストのうちで、テストまでのパスの一部が…

2.3 全てのレベルで自動化されているテストコレクション

http://codespeak.net/py/dist/test.html#automatic-collection-of-tests-on-all-levels 自動的なテストコレクションはカレントディレクトリ(またはコマンドライン引数で渡されたディレクトリ)とそのサブディレクトリを走査し、test_で始まるか_testで終わる…

2.4 テスト生成器: テストを生成する

http://codespeak.net/py/dist/test.html#generative-tests-yielding-more-tests テスト生成器は呼び出し可能なオブジェクトと引数を作成するジェネレーター関数である。 異なる引数に対して何度もテスト関数を実行させたいときに、非常に役に立つ。 例: def…

2.2 例外に関するテストを書く

http://codespeak.net/py/current/doc/test.html#how-to-write-assertions-about-exceptions例外に関するテストを書くには、2つの書き方のどちらかを使えばいい。 py.test.raises(Exception, func, *args, **kwargs) py.test.raises(Exception, "func(*args,…

2.1 assert構文による表明

http://codespeak.net/py/current/doc/test.html#assert-with-the-assert-statement 表明を書くのは非常に簡単で、py.testの特筆すべき機能だ。 任意の式をassert文で評価すればいい。 例えば以下のようなテストが書ける。 assert hasattr(x, 'attribute') …

軽量なテストツールpy.test

http://codespeak.net/py/current/doc/test.html1.始めよう コマンドラインツール py.test 既にpy.testをインストールして、コマンドラインから実行できるようになっているところから始めるよ。 py.testはテストを実行させるためのコマンドラインツールだ。 …

Buildbot SVN連携とかメール通知設定

SVN を監視させる SVNにコミットしたら、Buildbotに通知して、テストとかしてもらいます。 $SVN_REPOS/hooks の下に、post-commit.tmpl があるので、これをpost-commitにリネーム。 とりあえずローカルリポジトリなので、自分のアカウントが実行できればOK? …