私はあなたに実用的な例を提供することはできません。しかし、私はどのように問題に近づくかを概説することができます。
あなたの目標は、残りのAPIまたは同様のものの検証を自動化することです。つまり、特定の質問があれば、Webアプリケーションが期待どおりに応答することを確認します。
何らかの理由で、キュウリを使用します。
最初に私が言いたいのは、Behavior-Driven Development、BDD、およびCucumberはテストツールではないということです。 BDDとキュウリの目的は、システムが何をすべきかを知っている人、それを実現するコードを書く人、そして行動を検証する人の間のコミュニケーションツールとしての役割を果たすことです。だからこそ、この例はほとんど自然言語で書かれています。
どうすれば問題に近づきますか?
私は単体テストまたはキュウリのシナリオからAPIを構成するメソッドを呼び出すことによって、動作の大部分を検証します。つまり、実行中のサーバーがなくても正常に動作することを確認します。データベースなし。これは速く、スピードは重要です。おそらくこの方法で論理の90%以上を検証するでしょう。
サーバーを起動して配線を確認し、前の手順で確認した方法に到達できることを確認します。これは遅いので、私はここでできるだけやりません。可能であれば、検証を実装するために使用されたコードからサーバーを起動します。私はテストセットアップの一環としてサーバーを起動します。
これには外部ツールは含まれませんでした。あなたのプログラミング言語といくつかのライブラリだけを含んでいました。このようにするのは、できるだけポータブルにしたいからです。使用するツールが少なければ少ないほど、簡単に作業できます。
私は自分のビルドツールでいくつかの設定を行い、統合テストを実行する前にサーバーを起動していたことがありました。これは通常、より重いものであり、可能な場合は避けるものです。
したがって、サーバーなしで動作を確認してください。サーバーとの配線を確認します。このステップでは、配線のみを確認することが重要です。ロジックは以前に検証されており、繰り返す必要はありません。
速いフィードバックループのように、速度は非常に重要です。良い世界では、システム全体を構築しテストすることは、数分ではなく数秒かかる。
あなたの時間を取ってくれてありがとう、本当に素晴らしい答えです:) –