同僚と話している中で、unittest.mock.patchを使ったデコレータの差し替えに関する話題が出ました。 そういえばデコレータは差し替えたことがなかったため、試してみたことをメモします。 なお、「テストファイル群に、デコレータを差し替える/差し替えないものが混在している場合」で使った方法は強引な気がします。そのため、もしより良い方法をご存じであればご指摘ください。 目次 環境 用意したデコレータとプロダクションコード 引数なしのデコレータを差し替える 引数ありのデコレータを差し替える ダミー処理をするデコレータに差し替える デコレータの差し替え有無が混在する複数のテストファイルを同時に実行する場合 ソースコード 環境 Python 3.6.1 pytest 3.0.7 テストランナーとして使用 用意したデコレータとプロダクションコード デコレータとは、関数に処理を追加するためのシン