タグ

ブックマーク / aligach.net (2)

  • ノーフレームワークのレガシーPHPがCIに乗るまで

    ついに仕事で触っている PHP のコードがほんの一部のテストとは言え CI に乗った。 正直これは感動ものだ。 今回はここに至るまでの長大な物語をダイジェストでお届けしようと思う。 有史以前PHP 3 で作られた 1 URI : 1 スクリプト + 共通関数 時代 当然のように PHPHTMLSQL 混在まともなテスト環境がなかったので似た環境をどうにか作るパスとか絶対で埋め込みまくりなのでとりあえず共通のパス情報の変数に差し替えまくりテスト環境用のコードと番環境用のコードが違うオール目視 つらかった。 みなさんの予想通りバージョン管理なんてものは存在しなかった。 素朴なPHPを徐々にclassにclass になれば phpdoc を書きやすくなるいきなり実行しないようにすればテストしやすくなる これは後から気づいたんだけど、結局フロントはロクに自動テストできてない一時期 p

  • ちょっとテストとか価値とかについて思ったこと

    昨夜カフェでこんな話をしていた。 自分はこんなことを喋った。 テストがあると安心とりあえず Selenium だけでもあると違うと思うけど、HTML をテストするときはデータの違いでテストが丸ごと落ちたりしやすいから使いどころ難しいんだよね。サイボウズさんはよく Selenium ベースで回せたよなー1。最近教えてもらって納得したのは、スローテスト回避にムキになって mock でかくするのは末転倒っぽいこと。テストコードのメンテコストを下げるために fixture replacement が効いたので最近 mock ざっくり捨てたお。相手はこんな話をしていた(誤解あったらごめん。というかボカす必要あるかな)。 テストコード(のメンテ)がプロダクトコード変更の足を引っ張らないかRSpec より Cucumber の方がクライアントの納得や価値に繋がらないかぶっちゃけ細かいテストが揃っている

  • 1