7

シナリオは次のとおりです。私の注文モデルには、支払いURLを取得するためにリモート支払いゲートウェイに接続するafter_createがあります。私のCucumberテストでは、このアクションを実行したくありませんが、任意のURLを返します。私の現在のキュウリのテストは次のようになります。

製品「ProductX」がある場合、資格情報を入力して「今すぐ注文」をクリックすると、「任意のURL」にリダイレクトされます。

問題は、注文モデルがURLを正しく設定し、リモート支払いゲートウェイに接続しないことをどこで/どのように確認するかです。

4

3 に答える 3

12

ウィキには、スタブに関するいくつかのヒントもあります。

于 2009-09-09T21:47:27.990 に答える
4

features / support / env.rbで、Orderモデルにモンキーパッチを適用して任意のURLを設定しました。これはモカや他の何かでも可能ですが、この場合は意味がありません。

私の手順では、次のように正しいリダイレクトの応答を確認できます。

Then /^I should be redirected to the payment gateway$/ do
  response.status.should eql("302 Found")
  response.location.should eql(Order.last.payment_url)
end

これが他の人にも役立つことを願っています。この目標を達成するためのより良い/よりクリーンな方法があるかどうかを知りたいです。

于 2009-09-07T10:28:34.270 に答える
2

あなたが正しくやろうとしていることを私が理解しているなら、FakeWebを見てください。

于 2009-09-07T10:32:46.980 に答える