エンジニア目線のTIPSとか

日々の生活から思うことを書いていきます

環境ごとの差分をなくした方が事故が減る?

notwoです^^

 

テストをやっていて、開発環境と本番でのデータの違いからテストの効率が落ちたり、リリース後に問題が出てしまうケースを見かけました。コードは一緒でも、データの差分がバグにつながり得ることを知って、なんとかできないものかと思ってたら、面白いものを見つけました^^

 

クックパッド開発者ブログにすごく興味深いエントリがあがっていたので、載せます!

 

本番と開発環境で同じデータを使って実践できるので、極めて自然なデータでテストできるメリットが享受できそうですね!

テスト環境とかだと、一部のデータだけを改ざんしてテストしやすくしたり都合よく書き換えることもあるので、実際にはあり得ない組み合わせのデータが出来上がってしまうことも多く、それでテストすれば本番では起こらず開発環境特有のバグに悩まされてしまうケースも考えられます。これは余計な時間を取られそうですね'A`)

その問題を一切排除できるのがとても大きなメリットに感じられます。

ユーザが体感しているものと同様の感覚を味わいながら開発する、というコンセプトが印象的です。確かにいつもはtestとかhogeとかfooばっかり見るので新鮮そうです。

 

 

心配点はないのか?

開発環境で本番データを扱う以上は、本番で利用されるデータに影響があるのは論外なので、レプリして使うことになるのは間違いないです。しかしそれでも不安というかリスク的にやりたくない場合もありそうです。特に金融系。

クレジットカードの決済情報や氏名住所等のcriticalな個人情報がDB内に眠っておりこれらを扱うのはあまりにセキュリティ的にリスキー過ぎるので、扱うのはちょっと難しいかもしれません。

万が一の情報漏洩も許されない以上、扱えるのは責任者クラスだけ!というルールが結局、敷かれてしまうんじゃないでしょうか^^;

 

扱いに気をつければ最大限の開発効率UPにつながり得るので、是非実践したいものですね!できればスタートアップの段階から。。。^^; 

 

ではこんな感じで^^