アプリ版:「スタンプのみでお礼する」機能のリリースについて

お世話になります。
Web動的プログラム開発時、最低限必要と思われる
テスト項目や
実施方法等をぜひアドバイスしてください。
(単体テストレベルでは、正常に動いていますが、
 今回初めてWeb動的プログラムを作成した関係で、
 何か、テストし忘れていることがないか?
 気になっており、今回ご質問させていただきました)

開発環境:
 Eclipse3.5、CentOS5.5、MySQL、Java(サーブレット、JavaBeans)、JSP、
  HTML、CSS、JavaScript等利用。

以上になります。
なお、もし今回私がご質問させていただく上での
情報の記述が不足しているなどございましたら、
あわせてご指摘願います。

以上、宜しくお願い致します。

A 回答 (1件)

単体テストレベルをどれほどやられたのかわかりませんが、


私はいつも以下のようなことに気をつけてます。

【単体】
●テキストボックスだけでなく、ラジオボタンやチェックボックスの値の入力チェック
 → FireBug などで書き換えられる可能性有のため
●エスケープ処理 (「<」を「&lt;」に変換など )
 →不正なスクリプトが実行されないように
●SQLインジェクション対策
 →「%」「%」「_」「_」をエスケープする。
 (Oracle であれば LIKE '%xxx%' ESCAPE '\'
●その画面を表示する際のDB検索条件が本当に正しいか
 →会員が予約した予約データを表示する際に、予約IDだけで取得するのではなく、会員IDも条件に含めるなど(そうしないと別の会員が他人の予約IDを指定するだけで見れてしまう)
●トークンチェックによるブラウザ戻るボタン対策
 →DB登録処理後、ブラウザ戻るボタン、で再度登録したときに二重登録できてしまわないこと(またはサブミットボタンの二度押し)
●セッションの使い方に問題がないか
 →ブラウザを2つ同時に立ち上げて、セッションを共有させている場合に、不正なデータが登録されないか。Aという商品と、Bという商品を別々のウィンドウで操作して、再度にDB登録した際に、AとBの情報が混ざってDBに登録されないかなど。
(セッションではなく、hidden によるリクエスト中心の作りであれば問題ないですが)

【結合~システム】
●パフォーマンス
 →アプリに無駄・重い処理(ループの中でSQLを実行しているなど)がないか
 →SQLの実行計画を取得し、索引や、ヒント句などをつける
●負荷テスト
 → jmeter などのツールを使って多人数同時アクセスを想定する

【その他】
これはテストではないですが、ソースコードのレビュー、リファクタリングを行う。
本番稼動してからはソースコードが直しづらいので、必ずリリース前にキレイにしておく。
※保守で泣く羽目になります。

・変数名のつけ方が正しいか
・コピペによる同一コードがないか
・共通部品で切り出せないか
・もっと簡潔に記述できないか
など
    • good
    • 0
この回答へのお礼

「hatimitu」様

お世話になっております。
的確なご回答ありがとうございます。

私が想像していた以上に、動的Webプログラムでは、
詳細なテスト確認が必要と気づかせていただき感謝致しております。

今回教えていただきました1つ1つを、
これから検証してみます。

これまでネットで調べても、今回ご回答をいただけたような
簡潔、かつまとまったわかりやすい情報を見いだせていなかった為、
本当に助かりました。
ありがとうございました。

お礼日時:2010/11/17 02:30

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!