最初に申し上げておきますが、あくまで戯言ですよ、戯言。
開発者なら誰しも悩むことと思いますが、テストケースに合わせたテスト環境をいかに準備して管理/運用していくかは、ソフトやシステムの品質維持に欠かせない重要な要素です。
それなりの予算を取ってテストチームでも持っている開発現場ならともかく、私も含めてフリーソフト作者の方々はかなり苦労しながら、コードを書くのと同じだけの労力を割いていることと推察します(多分・・(w)。
特に問題になりがちなのが、ネットワーク関連のテストではないかと思います。
かく言う旅行びと日記も例外ではなく、単体としてのテストは十分に可能なのですが、問題はBlogサーバーと絡めた時のテストとなります。
Movable Typeとか他のBlogサービスにしてもリファレンス足りえるサーバー環境もいっぱいあるのに、何が?と思うでしょうか。
そもそもテストというのは正常に動作している場合だけではありません。一番注意しないといけないのはエラーケースなのです。
Movable Typeとかで正常なケースの動作をチェックするのは簡単です。でも、もしサーバーが本来あり得ない返信をしてきたら?アプリケーションとしては本来そこまでチェックしてハンドリングできないと原因不明エラーで落ちまくることになってしまいます。
先の例のような立派な開発現場ならそうしたケース向けに仮想サーバーを組み立ててシミュレーション環境をわざわざ構築したりします。時にはパケットをエミュレーションして(改竄とも言いますが)テストしないといけない場合もあります。
実は作者の本業はB2B構築とかに関係しているんですが、本当に気が遠くなる作業をすることもあるんですよ。どんな実装がされているか分からないインターネットの世界では、どうしても必要なステップ(というかメイン作業)となるんです。
でも個人で作っているようなソフトではなかなか難しいのが実情です。Movable Typeみたいなリファレンス環境がそんな馬鹿な動作をしてくれるようにするのはなかなか大変な作業になってしまいます。
ではどうするか?
これだけ様々なBlogサービスが世の中にあると、中にはあるんです、とんでもない実装がされているサービスが。本当に仕様書読んでるのか?担当者は学生か?というところが。(優秀な学生さん、ごめんなさい)
当初は私もそんなところを見つけるにつけ、あまりにひどいと思って憤慨していたのですが、ある日気づいたのです。
こちらの想像を超えたその実装は、逆に捉えればバグ出しには最適とも言える訳です。実際それに気づいてから積極的にそんなどうしようもないサービスを十二分に活用させてもらっています。お蔭様で多分普通なら気づかないようなバグも幾つかFIXできました。
それからは見方が180度変わり、私にとってはとても大切なBlogサービスとなりました。
そして、こう思います。
いついつまでも、その駄目駄目さ加減を直して欲しくない。仮に機能拡張とかしても、ぜひまともな実装などして欲しくない、と。
# 因みにどこのBlogサービスのことなのかは一切お答えしません。公式サイトなどに登場するところかどうかも内緒です。試しているから既に記載してしまっているかも知れないし、ばらしたくないので登場させていないかも知れませんね。
だって、今となっては私の大事な宝物なのですから。気づかれる訳にはいかないんです。
もう一度言っておきますが、戯言ですからね、戯言。。。