「フィクスチャ」の異なる意味は何ですか?


19

「フィクスチャ」の概念を理解するのに多少の困難があります。テストスイートとは何か、テストケース、テスト実行は知っていますが、「フィクスチャ」とは正確には何ですか?パラメーター化されたテストケースですか?

「フィクスチャ」という用語の意味またはセマンティクスは、プログラミング言語またはテストフレームワークによってわずかに異なる可能性があるように思えますか?私はphpunitフィクスチャだと思う

ワールドを既知の状態に設定し、テストが完了したときに元の状態に戻すコード。この既知の状態は、テストのフィクスチャと呼ばれます。

フィットネスフィクスチャ」とは少し異なります

フィクスチャは、Wikiページとテスト対象の実際のシステムであるテスト対象システム(SUT)の間の橋渡し役です。」

この質問に答えることができるソフトウェアテストの専門家がここにいますか?他のプログラミング言語への参照は大歓迎です。


1
@クリス(およびKNB)入れてください答えを答えとしてでは、質問に編集していません。

あなたが尋ねてうれしい、私はほとんど同じ質問をする:)
アディプラセティョ

回答:


19

PHPUnitFitnesseなどのテストツールのコンテキストでは、この用語は間違いなくテストフィクスチャの概念を指します。

一部のアイテム、デバイス、またはソフトウェアの一部を一貫てテストするために使用されるもの...

ソフトウェア

テストフィクスチャは、ソフトウェアテストでテストを実行するためのベースラインとして使用される固定状態を指します。テストフィクスチャの目的は、結果が再現可能になるようにテストが実行される既知の固定環境があることを確認することです。これをテストコンテキストと呼ぶ人もいます

備品の例:

  • 特定の既知のデータセットでデータベースをロードする
  • ハードディスクを消去し、既知のクリーンなオペレーティングシステムインストールをインストールする
  • 特定の既知のファイルセットのコピー
  • 入力データの準備と、偽または模擬オブジェクトのセットアップ/作成...

備品の使用

フィクスチャの利点には、テストからテストの初期化(および破壊)を分離すること、複数のテストで既知の状態を再利用すること、フィクスチャが設定するテストフレームワークによる特別な仮定などがあります。


2
要約すると、フィクスチャは、テスト(または何でも)を進めて期待される結果を得ることができる既知の状態を持つオブジェクトです。
デイブティーベン

そのため、フィクスチャはテストスイートの抽象化のようなものだと思います。たぶん、人々は同義語を使用するので混乱したかもしれません:フィクスチャという用語(抽象化、またはテスト実行時の初期のステートフルオブジェクト)とフィクスチャ設定(setup()メソッドによって処理されるために保存された設定)。
knb

4

テストコンテキスト以外では、フィクスチャという用語は、アプリケーションを初めてデプロイするときに、ストレージの初期データ(データベースの初期データなど)を表すために使用されることがあります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.