2016-12-30 8 views
0

で最初にしてから、アプリケーション/ XMLで動作するように呼び出します。これらのREST呼び出しは、コンテンツタイプapplication/jsonとapplication/xmlでうまく機能します。同じSpecflow/BDDのシナリオは、私はREST呼び出しますspeclow/BDDのテストケースの数が多いアプリケーション/ JSON

しかし、これらのコンテンツタイプを手動で変更し、JSONとXMLをテストする必要があるたびに、同じシナリオをすべて再実行する必要があります。

すべてのシナリオを2回実行する方法は、最初にContentType application/jsonで実行し、2回目はapplication/xmlで実行します。

答えて

0

はい、Specflowには自動的にサポートするものはありません。あなたがタグが段階で、あるいはScoped Bindingsを使用することによって使用されているかを検出簡単に手順を再利用し、ここで

Given I am using JSON 
And X 
When Y 
Then it should Z 

Given I am using XML 
And X 
When Y 
Then it should Z 

あるいは

@UsingJSON 
Given X 
When Y 
Then it should Z 

@UsingXML 
Given X 
When Y 
Then it should Z 

のようなものを書くことができると述べた

0

"BDDテストケース"のようなものはありません。システムがどのように振る舞うかの例だけであり、時には「シナリオ」と呼ばれます。

私はまず、さまざまなシステムの異なるの例のいくつかの周りにいくつかの会話があることをお勧めします。これは、動作が実際に同一かどうかを確認するのに役立ちます。これらのサンプルをキャプチャすることで、将来の開発者は実際のニーズがどこから来ているのかを理解し、どのソースが各エンコーディングを使用する可能性が高いかについての期待を設定できます。

テストを書く必要がある場合は、コードのJSONとXMLの両方の部分を統合テストでラッピングしてみてください。 XMLとJSONは技術的な問題であり、ネイティブ言語は本当に本当にリファクタリングが難しいです!だから、おそらくNUnitのようなものを代わりに使いたいと思うでしょう。

は、今すぐあなたのシステムがどのように振る舞うかを示し、また、物事が正しく配線されていることを確認するのに役立ついくつかの例と、それはXMLとJSONの両方で動作することを確認し、いくつかの統合テストを持っています。技術的な聴衆のための統合テストがあります。技術者でない人が実際に作業していることを確認したい場合は、名前が適切に指定されていることを確認し、ビルドのURLを指定してください。ほとんどのビジネス関係者はキャメルケースを読むことができます。

JSONとXMLの両方を使用してすべてのシナリオを実行する必要がある場合は、「JSON」シナリオツリーと「XML」シナリオツリーを作成し、シンボリックリンクやファイルをコピーして実行するビルドスクリプトを使用できます同じ英語/ネイティブ言語のソースから、それぞれXMLまたはJSONで実行する異なるステップ定義を提供します。私はあなたの最初の提案のセットでより簡単な時間を持つだろうと思う。

関連する問題