2017-01-06 2 views
0

理想的ではない自動テストカバレッジを持つ15年以上のモノリシックアプリケーションでは、継続的な配備(機能フラグの後ろにダークコードがあります)を開始します。私たちは十分に読んだことがあります/ステップごとにそれを行う方法を理解するのに十分な演奏をして、私たちの自動債務に対処しました。Continuous Deployment環境でSpringをアップグレードする方法

しかし大きな疑問が浮かび上がった:Spring Frameworkをビッグバンを使わずに連続モデルでアップグレードするにはどうすればよいですか?経験によれば、マイナーな春のリリース(たとえば3.1から3.2など)でもかなりの手作業によるテストを含む徹底的なテストが必要でした。

「ダーク」リリースができないため、Springのアップグレードは、変更されたコード化されたすべてを把握し、回帰スイートを実行するための唯一のオプションです。あなたはDispatcherServletのようないくつかの不変またはオーバーライドされたフレームワークのメソッドを、壊れていない限り、私の経験の春に

おかげ

クリス

+0

私はあなたがそれを避ける方法を見ていません。すべてまたはなし。 – duffymo

答えて

0

は、(最後の10年間で、私はいくつかの春のアップグレードを行っている)、主に下位互換性があります。 doDispatch(私は一度しなければならなかった)。

テストカバレッジが低い場合は、他のものを導入する前に、より多くのテストが必要であることをマネージャに納得させることをおすすめします。私の個人的な意見では、50%未満のカバレッジで継続的な配信/展開を実行できず、システムのすべてのクリティカルパスをチェックする必要があります。

コードはかなり新しく、私たちはユニットテストで約65%(回線)のカバレッジを持つことができてとても運が良かったです。ステージングに展開した後は、すべてのサードパーティコードを実稼働環境に導入する前に、私たち自身のアプリ(サインアップ、ログイン、パスワードリセットなど)の重要な機能と同様に、ライブラリをアップグレードすることは慎重ではありません。図書館は2歳以上です。私たちは1日に複数回生産に展開し、1日に数百万ドルの取引で金融ソフトウェアを運用しています。

関連する問題