2008.08.06
ごく当たり前…のハズ。(テスト仕様書)
さて今回は「テスト仕様書」について…
とは言え、制作歴が長い方にとっては「ごくごく当たり前」の話なんですが。
ただ制作歴の短い…特にWebCGI(特にPHP)しか業務経験が無い方だと、どうも「リリース後に不具合発覚→検証→修正→更新」が容易に可能な環境が多い所為か(Web以外だと納品後の修正は、かなり面倒なコトに…)この辺りに関する意識が甘い方を、これまで何名か見てきてたゆえの話だったりします。
とは言え、わざわざこんなトコを好んで見ている方にとっては、このような話をする必要は無いのかもしれませんがw
/////////////////////////////////////////////////////////////////////
さて、テスト仕様書を作り慣れてない方る際、最も頭を悩ませるのは「テスト項目の挙げ方」だと思います。
自分も昔「テスト項目1,000個挙げろ」と言われ、最初は200も挙げられなかったような気がします。orz…
というワケで基本的なテキスト入力1つで、ちょっと挙げてみますと―――
【よくある『名前(姓)』の場合】
- 初回表示時、初期値が空白になっているか
- 半角カナを入れてsubmit
- 半角「¥」を入れてsubmit
- 半角ダブルクォートを入れてsubmit
- 半角シングルクォートを入れてsubmit
- 機種依存文字を入れてsubmit
- shift_jis固有で化ける文字を入れてsubmit
- HTMLタグを入れてsubmit
- JavaScriptを入れてsubmit
- 大量(仕様依存)の文字数を入れてsubmit
- 空入力でsubmit
- エラー判定条件にかかって戻ってきた場合の初期値
などなど。
まぁ、もう少し「半角記号」を細分化するだけでも、まだまだテキスト入力1個で項目の数は増えるワケで。とは言え内容を見ると幾つか―――
そんなの当たり前じゃないか。確認するまでも無い。
と思われる内容も含まれています。もしくは「項目数稼ぎでは?」と思われるかもしれません。でも、自分は「それでいい」と思ってます。
テスト仕様書自体は「試験の手順,実施内容」を記述するものですが、「その実施結果」と言うのは―――
ここに記述されている挙動については確認しました。間違いありません。
という証明の集まりです。ゆえに、その実施内容が―――
そこで何か起こるなど絶対あり得ない
ものであったとしてもず「本当に実施した」のであれば、各々の項目が被っていない限り、その数もまた説得力だと考えております。
だって―――
あり得ないと思っていたことが起こった
なんて、プログラマ稼業では日常茶飯事だと思いませんか?(笑)
/////////////////////////////////////////////////////////////////////
以上、本当に「ごくごく当たり前」のコトなんですけども―――
先日、一躍話題になった某サイト(判らなければぐぐれw)が、XSS(クロスサイトスクリプティング)にやられて騒ぎになり、
作者が謝罪…というニュース(事故?)がありました。
ちなみに記事を見る限りでは、ほんの1行で回避できたと予想される内容だったりします。
※まぁ「数時間で作成」と謳っているゆえ、事細かなテストまでは行なえていなかったのも無理はありませんが。
とはいえ、作った人は他の某サイト(判らなければぐぐれw)の作者であり、制作者としては相応な実績を積んでらっしゃるワケですが…やはり人間足る者、どうやっても「うっかり」ってのは少なからず存在するモノでして。どれだけ経験を積んだプログラマでも余程小規模でもない限り、イキナリ一発で「全くバグが存在しない」システムなんて作れないモノです。(むしろ経験を積んでいる方の方が、この辺りは痛感されているかと)
とは言え、スケジュールの都合上「メイン部分の実装」以外はどうしても意識が薄くなりがちです。
ただ「テストする手間」と「何か問題が起きた時に発生する対処」
この2つのトレードオフについて、頭の片隅に置いてみては如何でしょうか。
Trackback URL
Comment & Trackback
Comment feed
Comment