0 0 5 0 Dropbox の同期エンジンのコードを完全に書き換えるのは、困難な道のりでした(その目標と決断までの詳細については、以前の投稿をご覧ください)。コードの書き換えとは、運用中に膨大な数のユーザーのマシンで稼働している Dropbox を支えるエンジンを入れ替えることです。正しくコードを書き換えるには、テストの自動化に本腰を入れる必要がありました。私たちが策定したテスト戦略のおかげで、コードを書き換えている間、いつでも正しい方向に向かっていると確信が持てました。このおかげで現在も、短いリリース周期で新機能の開発と出荷を続けることができます。 ここでは、最初に新しい同期エンジン「Nucleus」の設計に反映したテスタビリティの検討事項と、テストしやすいアーキテクチャ上に構築したランダム化テスト システムの一部について説明していきます。 目次 テスタビリティ 1-1. プロトコル
![Dropbox での同期のテスト 確信を持って同期の中核コードを書き換えるまで](https://cdn-ak-scissors.b.st-hatena.com/image/square/ad4630a7f46b854ba78d7530946e504566687433/height=288;version=1;width=512/https%3A%2F%2Fnavi.dropbox.jp%2Fwp-content%2Fuploads%2F2020%2F05%2FScreenshot-2020-05-28-13.17.07.png)