[三流君] −−> [プログラマー業務の愚痴] −−> [バックナンバー一覧]
−−> No.204 不具合の連絡を受け バグ票の作成とテスト仕様書について

不具合の連絡を受け バグ票の作成とテスト仕様書について


仕様書・設計書のサンプル

フォーマットを整えてませんが、サンプルの仕様書は:[IE_SRC0307.zip]←今回作ったサンプルの IE_SRC0307.xls です。
サンプル作成履歴は→[IEソース表示サンプル]です。
1画面の処理なので、あまり参考となりませんが↑もあわせて見てください


ここから過去に書いたメルマガの記事


<不具合の連絡を受け バグ票の作成とテスト仕様書について>

こんにちは、久しぶりの発行です。
純粋でキラキラした目を失った、
腹黒プログラマーじゃなかった、三流プログラマーのKen3です。
今日は、不具合の連絡、バグ票について書きたいと思います。

/* * 1.今回のキッカケ */

ASPのサンプル SQL INSERT INTO文を使用する http://www.ken3.org/cgi-bin/test/test027-2.asp ↑ここにバグの書き込みを貰いました。 >6266 これだと ’(シングルクォート)が入らないよ〜 2009/02/14 19:52:58 と、連絡を受けました。

/* * 2.バグ・不具合の確認 */

連絡を受けたので、 SQL INSERT INTO文を使用する http://www.ken3.org/cgi-bin/test/test027-2.asp に飛び、 ’(シングルクォート) を入れて、不具合を再現してみます。 ※よく、客先ではダメで自社のPCだとOKなんて環境問題もあったりするけど、  まぁ、こんかいは、稼働中のサイトだから、確実に再現すると思います。 B'z と入力して、SQL発行ボタンを押すと、 Microsoft JET Database Engine エラー '80040e14' クエリ式 ''B'z', #2009/02/26 2:29:07#)' の 構文エラー : 演算子がありません。 /cgi-bin/test/test027-2.asp, 行 86 あらら、やっぱり・・・

/* * 3.バグ票 連絡票の作成 */

内容を確認したら、システム担当者宛のバグ票 バグの連絡票を作ります。 海よりも深く、山よりも高い、プログラマーのプライドを傷つけないように バグの内容を知らせ、修正・対応して貰うため ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ と 今後、同じミスをしないように対策をたてるため の 記録かな ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ※ボーナス査定に利用する手もあるけど、あまりやるとバグ票書かないで、  勝手に直し、今後の対策 や まわりの財産にならないので・・・ ※※バグは無いほうがいいけど、バグ対応もシステム屋の財産です(ホントか?オイ!) 下記のような項目を作りました。※過不足あるのでアレンジしてね。 システム名 ASPのサンプル 発生場所 データ追加処理 http://www.ken3.org/cgi-bin/test/test027-2.asp 通報元・内容 発見者 親切な読者様  連絡先 不明 不具合・バグの内容 メモの入力時 ’(シングルクォート)が入らない 再現性 あり・必ず ↑にバグ・不具合の内容と再現性があるか、時々発生していて原因が不明か、を書く 確認 確認した日 2009/02/25 確認者 システム3課 三流君 本人 確認状況 再現しました。 確認方法 本番稼働マシーンで B'z と データを入力し、下記のエラーを確認 Microsoft JET Database Engine エラー '80040e14' クエリ式 ''B'z', #2009/02/26 2:29:07#)' の 構文エラー : 演算子がありません。 /cgi-bin/test/test027-2.asp, 行 86 修正・処置内容 ミスの原因  と 今後の対策

/* * 4.担当者にバグ票を渡し、処置・対策を施す */

バグ票の前半が書けたら、担当者に渡し、 プログラム修正に取り掛かります。 この時に、テスト仕様書の修正と追加を行い バグ票と渡す といいのかも。 ※連絡を受けた不具合データをテスト仕様書で記載する・使う (あたりまえか) ※※タイミングは、プログラム修正時のテスト時でもいいけど 修正・処置内容 ^^^^^^^^^^^^^^ 原因 strMEMO が B'z と データを入力すると strSQL = strSQL & ",'" & strMEMO & "'" 'メモ ここで、 'B'z' と なり、文字列の判断がDB側でつかなくなり、 Microsoft JET Database Engine エラー '80040e14' クエリ式 ''B'z', #2009/02/26 2:29:07#)' の 構文エラー : 演算子がありませのエラーが必ず発生する。 処置 DBへ’’2つを渡すと、シングルコーテーション1つと解釈してくれるので、 '2009/02/25 シングルコーテーション対策で、 ’’と2つ重ねる。 strMEMO = Replace(strMEMO, "'", "''") 'シングルコーテーション2個に置換 上記、Replace文でシングルコーテーションを2個に置換 対応しました。 テスト仕様書に下記の項目を追加しテストを行いました メモに B'z と シングルコーテーションを入れる B'z と メモ欄に登録される メモ欄に A'' とシングルコーテーション2つを入れる a''とメモ欄に登録される

/* * 5.処置内容 と ミスの原因から範囲を推測する。 */

賢明な読者の人なら、気が付いたと思うけど、 ミスの原因が >'B'z' と なり、文字列の判断がDB側でつかなく なら、 メモ だけじゃなくて、タイトルの項目も?じゃないの? タイトルに B'z と 入れて 実行してみな Microsoft JET Database Engine エラー '80040e14' クエリ式 ''B'z','好きな文字を入れてください', #2009/02/26 3:56:55#)' の 構文エラー : 演算子がありません。 /cgi-bin/test/test027-2.asp, 行 89 ほら、全ての項目でしょ、修正しないといけないのは??? ギクッ ですよねぇ〜 '2009/02/25 シングルコーテーション対策で、 ’’と2つ重ねる。 strMEMO = Replace(strMEMO, "'", "''") 'シングルコーテーション2個に置換 strTITLE = Replace(strTITLE, "'", "''") 'シングルコーテーション2個に置換 と、2つの項目を修正しました。 また、テスト仕様書で共通項目として、 ・テストデータのテキストには ' や " , . &%$#!=~| などを含める ・テキスト入力の全ての項目でチェックする。 と、社内全体、グループ全体で情報を共有できるように。。。なるといいね。

/* * 6.終わりの挨拶 */

バグ票が貯まれば、(おぃおぃ貯めるなよ) 同時に処置、修正方法も貯まり、 同様のバグを出した時、過去のバグ票を探すと対策が早いです。 じゃないでしょ、 バグ票を書いたら、ミスを共有して、同じミスを犯さない。 今後のテスト項目に 過去のミス事例を追加し、ミスを事前に防ぐ。。。 まぁ、なかなか、 海よりも深く、山よりも高い プライドを持った人達が、 自分のミスのデータを提供するとは思えないよ なんて、言わないで、 社内で バグ票の作成 と 共通テスト項目の作成、この2つをやってみては? えっ、ぜひ、三流君のバグ票が見たいって? ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ う〜ん、持ち帰って検討しておきます。 と システム屋の便利な言葉 [ 持ち帰って検討 ] ^^^^^^^^^^^^^^ で逃げるように今日もサヨナラです。 三流プログラマーKen3でした。 PS.むかしのキラキラした目を取り戻したいけど・・・ムリだろうなぁ。


ページフッター

ここまで、読んでいただきどうもです。ここから下は、三流君のホームページの紹介・案内です
目的の情報が見つかったか?少々心配しつつ、、、

リンクや広告など

項目別に本音?それとも建て前?的な記事をまとめました。

気になったジャンル↓を選択してください。
[ルーキー rookies]・・・ 新人さん達 初心者さんへ
[学ぶ study]・・・学習、技術の取得
[仕様書 doc]・・・仕様書・設計書関係の話
[共同作業 team]・・・チーム、グループ作業
[プログラムは心? spirit]・・・プログラマー 心・気質・魂

[掲示板デビューしようぜ bbs]・・・掲示板関係の話、質問者・回答者の気持ちほか
[昔はできた seo]・・・三流式の効果無しSEOとアフィリエイト
[仕事や作業、転職 job]・・・仕事や転職、評価、作業など
[その他 etc]・・・その他 分類外の記事

※↑文章の味付けが変わっていて、お口に合うかわかりませんが。。。
※※読んで、気分を悪くされたらスミマセン。

Blogとリンク:[三流君の作業日記]/ [愚痴(Bookmark)]/ [広告Blog(Bookmark)]



[三流君(TOP ken3.org へ戻る)] / [プログラマー業務の愚痴] / [バックナンバー 一覧]