quattro_4's diary

また同じ過ちを繰り返すと気付かんのか!?

テストから見えてくるグーグルのソフトウェア開発 感想

テストから見えてくるグーグルのソフトウェア開発

テストから見えてくるグーグルのソフトウェア開発

Googleほどの規模でないと機能しないような内容が多いかもしれない。身の回りの現実に実践・応用するのは難しいことも多いと思う。
だたその根底にある、思想とか取り組みの目的などは役立つことが非常に多いと思う。

本の内容はけっこう多かった。後にリファレンス的に参照しても良い内容と思う。



気になった点まとめ

  • オライリーの『ビューティフルコード』の中の「ビューティフル・テスト」の著者
  • テスト自動化の開発の啓蒙活動
    • 最初はあまり理解されていなかった
  • エンジニアリングプロダクティビティ
  • Exploratory testing
  • 書いた本が初心者向けだった
  • マイクロソフトは、テストをソフトウェアエンジニアリングのエリートが手がける名誉ある仕事に変えた
  • 善意に満ちたコミュニティ作業は、あらゆる報奨制度の対象
  • テストコードが役立つのは、開発を加速するような形で実行できる場合だけであって、開発がスローダウンするのでは意味がない
  • テストサーティファイド コンテスト
    • いっしょにやろうと誘ったり、テストの価値を説明したりするのを恥ずかしがってはいけません。テストサーティファイドが成功した大きな要因はメンタリングです
  • 20%プロジェクト
  • 一般的な目安として、グーグラーは18カ月±1四半期ごとに自由に参加プロジェクトを変えることができる。(義務ではない)
  • テストプランは10分
  • 優先順位、深刻度
  • テストを書くたびに、そのメンテナンス契約を結んでいるということに気づかないことが多いのですはっきりとした価値を提供できない自動化は、捨てました。
    • 自動化はすぐに書けてすぐに実行でき、非常に限定的な問題を解決するものでなければなりません
  • バグ修正のコミットによって書き換えた回数によってファイルにランクを付けると、コードベースのホットスポットが見つかる
    • 個々のバグ修正コミットがどれくらい古いかによってウェイトを付けてファイルにスコアを付ける
    • タイムスタンプは0から1までの間に正規化
    • igrigorik/bugspots · GitHub
  • Tools
    • Buganizer
    • ボット
      • 試作、デモ
    • BITE - Browser Integrated Test Environment(ブラウザーに統合されたテスト環境)
      • ヘッドアップディスプレイ(HUD)
      • グーグルフィードバック
    • QualityBots
      • ピクセルベースのDOM分析を使って異なるチャネルのChromeの間でウェブページを解析する比較ツール


個人的な意識に何か影響を与えたかでいうと、1番は啓蒙活動大事だなと認識させられた。

それ以外では、新しい取り組みは試作を(たとえ許可がなくてもとにかく)作って、周りに評価してもらっている動きが偉いのだと思った。
あとは、テストをすること/書くことは目的じゃないという基本は忘れてはいけない。


7 hours
Speed 1/5
★★★★★