テストから始めてみます。

最近はまじめにプログラムを書いています。あるサイトを再構築しているのですが、これまた大昔に作ったものでフレームを使っています。

試しにCakePHPで作成してみます。しかも、最新のCakePHP2です。

2になるとUnitTestがSimpleTESTからPHPUnitiに変わりました。いろいろとカンファレンスに話しを聞いていると、アジャイルとか自分は感化されやすいので、まずはUnitTestでのテスト駆動開発を導入してみます。バージョン管理は前に導入していましたが、徐々に試してみます。

こうでも新しいことをしていないと、だんだんを開発のモチベーションが上がらないので。何でも試すことができるのは、一人で動いているせいでしょうか。

CakePHP2で使うPHPUnitの情報は、Googleさんに聞いてもほとんどありません。日本語での情報はありません。一番詳しいのは、CakePHP2のCook Bookです。ますはこちらを読むことを薦めます。結局、本家CakePHPにたどり着きました。英語ですけど、何とか読めます。

PHPUnitも開発元のサイトが一番詳しいということになりました。こちらは日本語に翻訳されています。

Fixruresのファイルは、CakePHPのBakeで作成するのが簡単のようです。DBから直接Fixturesにインポートすると、ちょっと大きなテーブルだとメモリが一杯になります。ソースを追ってみたところ、メモリにテーブルデータをすべて展開しているようです。最初は、何かバグでもあるのかと思っていました。Bakeで途中で聞いてきますが、一部を切り出した方がよさそうです。

テスト駆動開発は最初にテストコードを書いてからソースコードを書くのですが、まだまだテストコードを書くのを忘れて、直接コードを書いてしまいます。こちらは癖を付けなければいけません。

恩恵としては、リファクタリングするときはやはり効果があります。あとはエラーの赤を消して、緑にするという目標があって、プログラミングは楽しくなりそうです。

しかし、まだまだ、どうやってテストを書くのがいいのか迷います。我慢してしばらく続けようと思います。

+: View post on Google+

投稿者:

avatar

ando

50過ぎてもプログラマーの気持ちを忘れない。

「テストから始めてみます。」への4件のフィードバック

  1. 残念ながら、CakePHPしか使ったことがないので、PHPのフレームワークの比較はできないのですよ。

    慣れたものが一番ということになりますかね?

  2. Symfony2とCakePHPが、有名所ですかね。自分はまだどちらも使った事無いので、時間があれば触れておきたいところです。

  3. グループで作業していらっしゃるのなら、話し合ってみんなで使えるものがいいかも。無理矢理CakePHPでぶち上げたら、一人ついてこない人がいて、その部分のメンテがめんどくさかった。

    あと、生成してくれるSQLはとんでもないものがでてくるので、チューニングは必要です。そうでないと、遅くて使えません。

    巷に情報が多いフレームワークがよさそうです。

コメントは停止中です。