goo blog サービス終了のお知らせ 

ウィリアムのいたずらの、まちあるき、たべあるき

ウィリアムのいたずらが、街歩き、食べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も)

開発の初めから順番に書いていってみる その89:総合テスト

2007-09-07 18:28:05 | 開発ネタ

 シリーズ「開発の初めから順番に書いていってみる」の続きです。

 設計手順には、要求分析、外部設計、内部詳細設計・プログラミング、単体テスト、結合テスト、総合テスト、運用テスト及び運用とあります。
 (バックナンバーは、ここ http://www.geocities.jp/xmldtp/index_kaihatsu.htm)。

 前回、「結合テスト」ガ終わったので、今回は、総合テストの話です。




■総合テストの内容

 総合テスト、場合によってはシステムテストといいますが、そのやり方は、他のテストと同じです。
 つまり、ここに書いたように、
    テスト仕様書作成
      ↓
    テスト環境構築
      ↓
    テストデータ・ドライバ、スタブ作成
      ↓
     テスト
      ↓
    テスト結果作成



でして、問題は、そのテスト仕様書に挙げる項目の違いでした。




■総合テストに挙げる項目

 総合テストは、要求仕様書にかかれていることが満たされているかを確認します。
 要求仕様書は、機能要件(業務内容)+非機能要件ということになります。
 機能要件は、業務手順に従ってテストすることになります(これは、運用テストに含めているかもしれない)。
 問題は、非機能要件です。

 これは、トランザクション量をしらべたり、ルックアンドフィールの問題だったりなどなどですが、こーいうのは、ソフトウエア品質特性ISO/IEC9126(JIS X 0129-1)なんていうのがあったりします。

 そこには、信頼性、保守性、移植性、効率性、機能性、使用性とあり、さらに細かい区分があります。




■システムテストの例

 とはいえ、これでは、あまりテスト例として???なので、えらい昔の本なのですが、
第一種共通テキスト15 応用システム開発技術
ISBN 4-89078-452-7

の486ページに載っていた、「システムテストのテスト項目」を挙げて置きます。

それは、こんなかんじ。

(1)機能テスト
(2)移行テスト
(3)障害回復テスト
(4)他システムとのインターフェーステスト
(5)負荷テスト
(6)容量テスト
(7)機密保護テスト
(8)構成テスト
(9)操作マニュアルのテスト
(10)使いやすさのテスト

ここでいう、機能テストは、画面からのテストとなっているのですが、これだと、結合になってしまうわけで、ここでは、画面から、要件定義の業務要件に従って。。っていう感じだと思います。トランザクション量のテストは、負荷テストだったりします。




ってなかんじで、総合テストの話はおわりにして、運用テストの話に入ります。



  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

サーブレットからExcelを画面に出さずに、マクロを引数つきで呼び出す

2007-09-07 16:34:52 | JavaとWeb

このまえのJavaからExcelを画面に出さずに、マクロを引数つきで呼び出す。の応用で、サーブレットから、Excelを呼び出してみましょう。



■仕様
Excelを画面に出さずに、マクロを、コマンドラインから引数つきで呼び出すで示した、Excelマクロ(指定された内容を指定されたファイルに書き出す関数testmsg)がはいった、Excelファイル、book1.xlsが

¥¥tmp¥¥book1.xls
(¥は、本当は半角。以下同じ)

にあったとして

それを起動するVBスクリプト(さっきのところにプログラムは書いてあります)test.vbsが

¥¥tmp¥¥test.vbs


としてあったとき、サーブレットを引数

fname=書き出しファイル名&msg=書き出したい内容

で送ると、

¥¥tmp¥¥書き出しファイル名

に、書き出したい内容を書いて、保存します。
なお、C:¥WINDOWS¥SYSTEM32にcmd.exeがあるとします。




■ソース

このようなサーブレットを作ればいいみたい(クラス名はexecVBSとしました)

import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class execVBS  extends HttpServlet {

	/*
	 * メソッド:service
	 * 内容 :サーブレットが入ってくるところ
	 * 
	 */
	public void service(HttpServletRequest request, 
                      HttpServletResponse response) 
                          throws ServletException, IOException 
   {
		//==============================//
		//	引数の取得	  //
		//==============================//
		request.setCharacterEncoding("utf-8");
		String fname =	request.getParameter("fname");
		String msg   =	request.getParameter("msg");


		//==============================//
		//	プログラム実行	  //
		//==============================//
		String sendData = "ret ok!";
		Runtime r = Runtime.getRuntime();
		try
		{
			String[] cmdList = new String[6];

			cmdList[0]="C:¥¥WINDOWS¥¥SYSTEM32¥¥cmd.exe";
			cmdList[1]="/c";
			cmdList[2]="¥¥tmp¥¥test.vbs";
			cmdList[3]="/file:¥¥tmp¥¥book1.xls";
			cmdList[4]="/outfname:¥¥tmp¥¥" + fname;
			cmdList[5]="/msg:" + msg;

			r.exec(cmdList);
		}
		catch(Exception e)
		{
			sendData = e.toString();
		}

		//==============================//
		//	出力する		  //
		//==============================//
	         // ContentTypeを設定
	         response.setContentType("text/plain; charset=utf-8");
		response.addHeader("Cache-Control", "no-cache");
                  response.addHeader("Pragma", "no-cache");

	         // 出力用PrintWriterを取得
    	         PrintWriter out = response.getWriter();
		out.println(sendData);
   }
}


で、呼び出しは、たとえば、ローカル127.0.0.1:8080においたとすれば、
http://127.0.0.1:8080/vbs/servlet/execVBS?fname=kekka.txt&msg=abcdefg
とすると、tmpフォルダのkekka.txtに、abcdefgという内容で、ファイルを書き出します。

cmd.exeの指定ですが、"C:¥¥WINDOWS¥¥SYSTEM32¥¥cmd.exe"と、フルパスで指定しないとダメでした。


  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Gooと「顔ちぇき!」が業務提携

2007-09-07 13:54:10 | Weblog

ここのニュース

NTTレゾナントとジェイマジック、モバイル向けサービスで包括的業務提携を締結
~次世代型「検索」と「広告配信」分野で、相互に技術・サービスを提供~
http://help.goo.ne.jp/info/detail/1002/


によると(以下斜体は上記サイトより引用)

 NTTレゾナント株式会社 (*1、本社:東京都千代田区、代表取締役社長:和才 博美)と、モバイルを中心にインターネットサービスを展開するジェイマジック株式会社(*2、本社:東京都港区、代表取締役:宮田 拓弥)は、9月5日、モバイル向けサービスにおいて包括的業務提携を締結いたしました。

だって。

ちなみに

NTTレゾナント株式会社=Gooをやっている会社
ジェイマジック株式会社=顔ちぇきをやっている会社

そのうち、顔写真をアップロードすると、ネットで検索できるようになるのかしら。

もし、そんなサービスが出来たとして、検索したら、
警視庁の指名手配ばっかりに引っかかったら(^^;)



  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする