2016-11-19 4 views
0

Pythonでgitバージョン管理下で書かれたマシン学習コードがいくつかありますが(私の質問では、どのアルゴリズムでも可能です)私の同僚は、機能ブランチ上のコードベースの重要なリファクタを締結しました。ここでは、本番での機械学習プロセスを照会した結果が、コードベースのリファクタリングされたブランチ上の同じクエリと比較して妥当な統計的範囲内にあることを確認するためにいくつかの受け入れテストを書きたいと思います。Pythonテストで異なるgitブランチのコード

これはドッキング用のコンテナで動作するやや複雑なアプリです。テストはもっと大きな一連のテストの一部として実行する必要があります。

私はではありません。は、結果が合理的な統計的範囲内にあるかどうかを判断するテストの部分を書く方法を混乱させます。私はこれまで自動化された方法で一つの試験では、比較のためにWIPブランチからの結果と一緒に

をmasterブランチコードの結果をもたらすためにどのようにについて混乱しています、私の最高の(唯一の)アイデアが起動することですプロダクトドッカーコンテナーを実行し、機械学習クエリを実行し、クエリ結果をcsvファイルに書き込み、次にdocker cpを使用してこのファイルをローカルマシンにコピーし、機能ブランチの同等のcsvに対してテストできるようにします。しかし、これは優しくないようです。

これを行うには、より優れた/よりスマートな/ベストプラクティスの方法がありますか?理想的には物事を記憶に残す。

答えて

0

私はhttp://approvaltests.com/フレームワークの使用を検討します。テストするPythonコードを実行した後に出力を生成するテストコードを書くだけで、出力は何でも(テキスト、JSON/CSVファイルなど)できます。

マスターブランチでこのテストを最初に実行できるので、出力を承認済みのベースラインとして記録し、WIPブランチに切り替えて出力が異なる場合に同じテストを実行することができます。

詳細はthis podcast episodeをご覧ください。

関連する問題