お世話になります。
Web動的プログラム開発時、最低限必要と思われる
テスト項目や
実施方法等をぜひアドバイスしてください。
(単体テストレベルでは、正常に動いていますが、
今回初めてWeb動的プログラムを作成した関係で、
何か、テストし忘れていることがないか?
気になっており、今回ご質問させていただきました)
開発環境:
Eclipse3.5、CentOS5.5、MySQL、Java(サーブレット、JavaBeans)、JSP、
HTML、CSS、JavaScript等利用。
以上になります。
なお、もし今回私がご質問させていただく上での
情報の記述が不足しているなどございましたら、
あわせてご指摘願います。
以上、宜しくお願い致します。
No.1ベストアンサー
- 回答日時:
単体テストレベルをどれほどやられたのかわかりませんが、
私はいつも以下のようなことに気をつけてます。
【単体】
●テキストボックスだけでなく、ラジオボタンやチェックボックスの値の入力チェック
→ FireBug などで書き換えられる可能性有のため
●エスケープ処理 (「<」を「<」に変換など )
→不正なスクリプトが実行されないように
●SQLインジェクション対策
→「%」「%」「_」「_」をエスケープする。
(Oracle であれば LIKE '%xxx%' ESCAPE '\'
●その画面を表示する際のDB検索条件が本当に正しいか
→会員が予約した予約データを表示する際に、予約IDだけで取得するのではなく、会員IDも条件に含めるなど(そうしないと別の会員が他人の予約IDを指定するだけで見れてしまう)
●トークンチェックによるブラウザ戻るボタン対策
→DB登録処理後、ブラウザ戻るボタン、で再度登録したときに二重登録できてしまわないこと(またはサブミットボタンの二度押し)
●セッションの使い方に問題がないか
→ブラウザを2つ同時に立ち上げて、セッションを共有させている場合に、不正なデータが登録されないか。Aという商品と、Bという商品を別々のウィンドウで操作して、再度にDB登録した際に、AとBの情報が混ざってDBに登録されないかなど。
(セッションではなく、hidden によるリクエスト中心の作りであれば問題ないですが)
【結合~システム】
●パフォーマンス
→アプリに無駄・重い処理(ループの中でSQLを実行しているなど)がないか
→SQLの実行計画を取得し、索引や、ヒント句などをつける
●負荷テスト
→ jmeter などのツールを使って多人数同時アクセスを想定する
【その他】
これはテストではないですが、ソースコードのレビュー、リファクタリングを行う。
本番稼動してからはソースコードが直しづらいので、必ずリリース前にキレイにしておく。
※保守で泣く羽目になります。
・変数名のつけ方が正しいか
・コピペによる同一コードがないか
・共通部品で切り出せないか
・もっと簡潔に記述できないか
など
「hatimitu」様
お世話になっております。
的確なご回答ありがとうございます。
私が想像していた以上に、動的Webプログラムでは、
詳細なテスト確認が必要と気づかせていただき感謝致しております。
今回教えていただきました1つ1つを、
これから検証してみます。
これまでネットで調べても、今回ご回答をいただけたような
簡潔、かつまとまったわかりやすい情報を見いだせていなかった為、
本当に助かりました。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- サーバー Webサイト構築フリーランスの案件受注について 1 2022/03/27 18:16
- Windows 10 数年前からWindows10 の Update ができないです。なぜですか? 7 2022/11/09 06:03
- その他(プログラミング・Web制作) マウスオーバー→ホイール回転でスクロールできない 2 2022/10/31 10:06
- Java 問題作成のWebアプリの作り方を教えてください 1 2022/11/26 22:01
- デスクトップパソコン 「自動修復でPCを修復できませんでした」と表示されPCが起動しないのですが対処法はありますか? 5 2022/05/13 09:16
- システム 古いWEBシステム。もう追加プログラムは作れない? それともできる? 6 2022/06/08 13:41
- IT・エンジニアリング 開発エンジニアとテスター 閲覧ありがとうございます。 仕事について相談させていただきたく投稿しました 2 2022/12/07 18:38
- その他(データベース) 業務用のデータベースサーバーの選び方について 4 2022/11/22 10:22
- その他(プログラミング・Web制作) 入力フォームへ、データを自動的に入力するプログラム。どうやって作る? 4 2023/01/16 10:24
- IT・エンジニアリング SEとWebエンジニアの業務内容の違いについて 3 2023/06/22 23:23
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
jsessionidの有効期限を延長す...
-
ブラウザバック禁止
-
HttpSessionListenerクラスに関...
-
グローバルIPアドレスの変更タ...
-
ASP.NETのGlobal.asaxについて
-
エクリプスを使ってのセッショ...
-
ASP Session変数名の取得
-
ドットネットフレームワークのD...
-
画面遷移でセッション切れにな...
-
フォーム上で押されたボタンに...
-
三菱GOTの画面切り替えについて
-
ボタンが活性化の場合とは、ボ...
-
遷移元を判定したい!
-
Java-jspの画面入力値保持について
-
リクエストに応じたselectedの...
-
腕時計の時報をならないように...
-
ServletからServletへの値渡し
-
Javascriptのhistory.back()が...
-
「<c:forEach タグが終了し...
-
jspからServletを呼び、元のjsp...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
javascriptでセッションを取得
-
グローバルIPアドレスの変更タ...
-
setAttribute getAttribute 配...
-
javascriptでのログアウトボタン
-
フレームを使用した際のセッシ...
-
javascriptでセッションの削除...
-
sessionスコープとapplication...
-
セッションの情報の消去について
-
HTMLのSELECTタグの使い方、JSP...
-
エラーページ遷移後に入力値を残す
-
ブラウザバック禁止
-
MySQL・Tomcat・JSP 何度もSub...
-
ASP.NETのGlobal.asaxについて
-
複数Webサーバーでのセッション...
-
HttpSessionListenerクラスに関...
-
jsessionidの有効期限を延長す...
-
Tomcatでの同一セッション同時...
-
aタグによる複数リンクを別セッ...
-
JSPでブラウザ終了時にPostgreS...
-
XMLHTTPを使って、セッションID...
おすすめ情報