de-vraag
  • 質問
  • タグ
  • ユーザー
通知:
報酬:
登録
登録すると、質問に対する返答やコメントが通知されます。
ログイン
すでにアカウントをお持ちの方は、ログインして新しい通知を確認してください。
追加された質問、回答、コメントには報酬があります。
さらに
ソース
編集
 comatose
comatose
質問

テストケースの設計方法

これはあなたのほとんどのための非常に素朴な質問かもしれませんが、私はそれで混乱しています。

いくつかのプログラムのテストケースを設計する必要がある場合、期待される価値/結果がどのようなものかをどのように知るのでしょうか。プログラムはいくつかの複雑な計算を行い、複雑なアルゴリズムを使用して最終的な出力を計算しますが、これは他の手段で計算することはできません。たとえ同じ入力を別の手段で計算してからその平均値を期待値として使用して元のプログラムをテストしても、別のプログラム/プログラムから計算された期待値が、プログラムがまたテストされなければならないことを確かめるために、正しいものだったので、正方形に戻ってきました。

0 2011-10-27T21:58:16+00:00 3
プログラミング
testing
Nick Rolando
27日 10月 2011 в 10:02
2011-10-27T22:02:46+00:00
さらに
ソース
編集
#56793430

計算が複雑すぎて計算機で紙で計算できない場合は、どのようにプログラムすることもできますか?計算を小さなステップで実行しなければならない場合でも、いくつかの異なるテストケースを紙に書いて、その計算ステップをプログラムでテストして、その方法を試すことができます。コンピュータは人間が何をするかを指示するだけです。

2
0
Thomas Weller
30日 10月 2011 в 8:59
2011-10-30T08:59:47+00:00
さらに
ソース
編集
#56793431

あなたの質問は本当に意味をなさない。

テストとは、テスト中のシステムをブラックボックスとして扱う活動です。あなたがシステムに尋ねるもの(あなたの場合:計算)は、基本的にはこれです:これらの値をメソッドに渡すと、この値を返すようにします。

操作の結果であるべきものを事前に知る以外の方法はありません。いくつかのケースでは多くの作業があるかもしれませんが、他はすべて論理的に矛盾していて、テストの作成者がテストフレームワークの使い方を知っているという事実だけをテストします...

1
0
Bob
24日 7月 2012 в 9:49
2012-07-24T21:49:03+00:00
さらに
ソース
編集
#56793432

あなたの質問は、「オラクル」問題と呼ばれるソフトウェアテストで最も難しい問題になります。

テストをサポートするために、テスト入力に期待される結果の信頼できるソースを提供したいと考えています。ほとんどのテストシナリオでは、これは本質的に、テスト対象システムの完全なバグのない実装と同等であることを意味します。もちろん、もしそれがあれば、おそらくSUTの開発とそのテストをスキップすることができます。

しかし、それは通常そうではありません。したがって、テストケースの期待される結果を生成するための多くの実用的な(そしていくつかのエキゾチックな)戦略があります。これは、スプレッドシートを使用して関数を計算したり、結果を知っているいくつかのクエリを選んだり、既存の同等または類似のシステムの出力をテスト中のシステムの出力と比較したりするのと同じくらい簡単です。

私の本テストオブジェクト指向システムの第18章では、oraclesのための16のテストデザインパターンを提供しています。そのほとんどは自動化が可能です。

This page gives a summary of the book and links to Amazon http://www.robertvbinder.com/home/thought-leadership/books/

ボブ

1
0
質問の追加
カテゴリ
すべて
技術情報
文化・レクリエーション
生活・芸術
科学
プロフェッショナル
事業内容
ユーザー
すべて
新しい
人気
1
Roxana Elizabeth CASTILLO Avalos
登録済み 17時間前
2
Hideo Nakagawa
登録済み 1日前
3
Sergiy Tytarenko
登録済み 3日前
4
shoxrux azadov
登録済み 5日前
5
Koreets Koreytsev
登録済み 1週間前
© de-vraag :年
ソース
stackoverflow.com
ライセンス cc by-sa 3.0 帰属