前回単体試験に関して質問させていただいたものです。
前回の質問では記載情報が不足していた為(指摘あり)再度質問させていただきます。
現在単体試験の試験項目書を作るしております。その際どういった試験項目をつければいいのかが分からなくなり質問に至りました。
単体試験というものは色々な用途があると思いますが今回は「プログラムのロジック検証」をする為に行います。
調べた結果以下を満たすものという結論になりました。
・全ての条件式処理の正当性検証
⇒Aの場合、Bの場合、それ以外の場合などという条件が、
仕様通りに処理されるかどうか。
・限界値分析による処理の正当性検証
⇒処理を行う上での最大値、最小値、対象外値が、
仕様通りに処理されるかどうか。
・同値分割による処理の正当性検証
⇒いくつかのグループから代表値を設け、その値を処理させた時に
仕様通りに処理されるかどうか。
これらを念頭に入れたうえで前回のコピーになりますが以下5パターンに関しては
どういった試験項目を作成すべきかをご教授いただきたいと考えています。
【パターン1】
private void Run()
{
FormatCheck();
AutoRun();
}
【パターン2】
private void Run()
{
//g_Lenghtはグローバル変数
g_Length = 10;
AutoRun();
}
【パターン3】
private void Run()
{
//g_Length、rec_Length共にグローバル変数
g_Length = rec_Length;
AutoRun();
}
【パターン4】
private void Run()
{
if(g_Length == 10)
{
g_Length = rec_Length;
}
else if(g_Length == 4)
{
g_Length += 1;
}
}
【パターン5】
private string GetString(string c)
{
return c + "\n";
}
※この5パターンはこういうときはどういった試験項目になるんだろうと、イメージしながら
適当に作った例です。その為プログラムに意味は全くありません。
以上、ご教授お願い致します。
No.4ベストアンサー
- 回答日時:
> 次の作業として他言語間のコンバート作業が予定されているのですがプログラムの仕様書が残ってないそうなのですがこの場合コンバートした結果を単体試験で確認するには、どうすべきですか?
正攻法としては。
(1)旧プログラムは「仕様通りに作成されていると仮定」して、プログラムを解読して、「仕様書」を作る
(1-1)仕様を確認して、期待される処理と一致しているか、等の確認を行う。
(1-2) 上記仕様書を基にテストパターンを作成し、旧プログラムをテストして、仕様書が正しいかどうか確認する
(2) (1)で作った仕様書を基に、新言語でプログラムを作成する。
(2-1) 仕様書を基にテストパターンを作成し、新プログラムをテストする。
(2-2)旧プログラムと新プログラムとで、動作に差は無いか確認する
No.5
- 回答日時:
>調べた限りでは単体試験は各モジュールごとのIN(引数及び外部変数)とOUT(戻り値及び外部変数)が正しく出ているかを調べる
それは試験項目ではなく、単体試験とは何をするものかの説明なだけでは(辞書に「単体試験」という項目があって、その説明みたいな)?
他の人もいわれていますし私も何度も書いていますが、試験項目は関数やモジュールなどの仕様がわからないことには出せません。
No.3
- 回答日時:
少し難しく考えすぎているように感じます。
そもそも「コードを提示して、そのコードにあった試験項目を作る」という考え方が
単体試験の意味からずれています。
「この入力に対してはこの出力を期待する」というパターンのリストを作ればいいだけです。
private void Run()
{
FormatCheck();
AutoRun();
}
……と、コードだけを提示されても単体テストのテスト項目は作れません。
・何を意図して作られた関数か?
・システムとして、どういう入力を想定しているか?
・システムとして、どういう処理・出力を期待しているか?
という部分がはっきりして初めて単体テストが行えるわけです。
No.2
- 回答日時:
ソフトウェアのテストの技法とか本を入手して、まず多くの知識に目を通した方がいいですよ。
圧倒的な知識不足です。
学生かプロかも提示して欲しいですね。
それに一言単体テストと言いますが、少なくとも3つの方法があるでしょう。
どの方法を取っているのか、質問文の読み手としては気になるところです。
またプログラム的に意味のないものは検討の価値がありません。
この手のものは形から入ろうとしてもダメで、意味から入る必要があります。
なので、テスト対象の具体的な仕様があってこそ、どのテスト項目をどう採用すべきかなどが決まるわけです。
この回答への補足
次の作業として他言語間のコンバート作業が予定されているのですがプログラムの仕様書が残ってないそうなのですがこの場合コンバートした結果を単体試験で確認するには、どうすべきですか?
※私はIT企業の研修生です。
No.1
- 回答日時:
>・全ての条件式処理の正当性検証
> ⇒Aの場合、Bの場合、それ以外の場合などという条件が、
> 仕様通りに処理されるかどうか。
(略)
「仕様通りに」と書かれていますが、その「仕様」はどこですか?
前の回答でも同じような事書いたと思いますけど。
int
foo(int a, int b)
{
return a + b;
}
という(間違っているかもしれない)コードから本当の仕様がわかりますか?
テスト対象となるコードから想定するテスト項目は、そのコードが正しいという仮定の上で作成される事になるので、テスト項目としての意味はありません。
この回答への補足
調べた限りでは単体試験は各モジュールごとのIN(引数及び外部変数)とOUT(戻り値及び外部変数)が正しく出ているかを調べる
こういう試験ってないのでしょうか?
認識間違ってるのかな
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
texに関する初歩的な質問
-
P2P地震速報のEEW APIの仕様書...
-
テスト仕様書作成って初心者(...
-
Debug.Writeで困っています(VB...
-
VBからBeckyを使用したメール送...
-
外部仕様書の書き方
-
BOXにカーソルを合わせると、BO...
-
DataAdapterで取込するとき ?...
-
WEBサイトテスト仕様書について
-
EXCEL_VBAでOracleにADO接続し...
-
C#の単体テストでローカル変数...
-
ソフトウェアテストに関して、s...
-
ホワイトボックステスト
-
どうしてもわかんないのでおし...
-
納品 vs ご納品 どちらが正し...
-
三菱製PLC:ファイルレジスタ(...
-
「スポット受注」はどういう意...
-
Zと2とか紛らわしいのがあるか...
-
納入日と納品日について
-
長さ0の文字列を格納できません...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
texに関する初歩的な質問
-
VBからBeckyを使用したメール送...
-
Excel-VBA コンテンツの作成日時
-
C#単体テストで同クラス内の呼...
-
JUnit結果出力をファイルに書き...
-
VB6 コードでメニュー作成
-
P2P地震速報のEEW APIの仕様書...
-
C#の単体テストでローカル変数...
-
Visial C++におけるプログラミング
-
UNIX:テキストファイルのNULL...
-
HWNDへの変換
-
web制作について
-
テスト仕様書について
-
仕様とはなんですかよろしくお...
-
ショッピングカートを作るには?
-
テスト仕様書作成って初心者(...
-
開発後のテスト方法の勉強について
-
自作ゲームについて・・・
-
外部仕様書の書き方
-
テスト仕様書の著作権について
おすすめ情報