タグ

patchとunittestに関するraimon49のブックマーク (2)

  • Python + pytestで、monkeypatch.setattr()を使ってみた - メモ的な思考的な

    pytestでは、monkeypatchを使ってmockを作成できます。 Monkeypatching/mocking modules and environments — pytest documentation モンキーパッチ/モックのモジュールと環境 今回は、monkeypatch.setattr()を使って、 プロダクションコードのメソッドや関数 Python標準モジュールのメソッド を差し替え(mock化)してみた時のメモです。 目次 環境 使い方 プロダクションコードのメソッドを差し替え 標準ライブラリを差し替え 差し替え対象モジュールをimportせずに差し替え 定数の差し替え 複数の引数を持つメソッドを差し替え プライベートメソッドの差し替え 複数の戻り値を持つメソッドの差し替え 例外を送出するように差し替え プロダクションコードがimportしているモジュールの属性を差し

    Python + pytestで、monkeypatch.setattr()を使ってみた - メモ的な思考的な
  • 炭坑の庭師 - steps to phantasien

    Chromium と WebKit は二つの独立したプロジェクトだ。 ソースツリーはそれぞれ別で、そこにはインテグレーションの苦労がある。 WebKit 以外にも V8 や Skia など Chromium が依存している外部のプロジェクトは山ほどあるけれど, WebKit とは特にぴったりくっついている。 そのぶん二つの足並みをあわせる手間も際立つ。 以前、書籍 ”アジャイル開発の質とスケールアップ” で リリーストレイン という大規模プロジェクトのインテグレーション手法を読んだ。 プロジェクトの内部で一段細かい時限リリースを設け、そのタイミングでインテグレーションする方法。 内部リリースにあわせてプロジェクト同士が依存している相手のバージョンを上げ、 壊れたところをなおすわけ。 Chromium と WebKit もこまめに相手のバージョンを新しくする。 主たる依存の向きは Chro

    raimon49
    raimon49 2012/05/20
    外部OSSに依存しており、かつクロスプラットフォームで動作することが求められるプロダクトのメンテナンス 最新リビジョン同士を組み合わせるCanary Buildとの違い 下っ端や専業に押し付けず当番制にする
  • 1