問題タブ [rack-test]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
536 参照

ruby - Padrino/Sinatra Rack-Test POST でパラメーターが入力されない

Rack-Test を使用して padrino アプリに投稿リクエストを発行しようとしています:

私のルートは次のようになります。

rack_input生のラック入力を解析するために私が書いたメソッドです。テストを実行すると、次の出力が得られます。

ただし、コマンド ラインで curl を使用すると、正常に動作します。

私は何を間違っていますか?

0 投票する
1 に答える
190 参照

ruby-on-rails - 何をテストし、どのようにテストするのか?

ruby on railsでcucumberとcapybaraとrack_testでオブジェクトを破壊するテストを書きたい。

次のようなシナリオを書くべきだと思います:

純粋に削除アクションとは別のものをテストする必要があると思うので、インデックス ページまたは表示/編集ページのリンクをクリックしてテストしたくありません。

また、リンクをクリックすることはインターフェースが正常であることを意味しますが、誰かが削除できないオブジェクトを削除するリクエストを送信し、インターフェースにリンクが表示されない場合はどうなるでしょうか?

これを踏まえて、最初のステップで削除リクエストを送信し、そのリクエストに対するレスポンスを検査する必要があります。

最初のステップを実装するとエラーが発生するため、delete urlそれを実行しようとすると問題が発生しますpage.should have_contain(text)No response yet. Request a page first. (Rack::Test::Error)

あなたはそれについてどう思いますか?

0 投票する
1 に答える
520 参照

ruby-on-rails - 削除リクエストを送信し、Rack::Response の代わりに Capybara::Session を調べる方法は?

きゅうり、カピバラ、ラックテストでテストしています。

削除リクエストを送信して、レスポンスを検査したいと考えています。

私は、メソッドvisit(url)が応答をオブジェクトpageであるCapybara::Session.

今、メソッドdelete urlを使用して削除リクエストを送信し、次にfollow_redirect!. ここでの問題は、これらのメソッドlast_responseRack::MockResponse.

オブジェクトを使用して Web ステップを構築しましたpageが、削除要求を送信して応答を に保存する方法が見つかりませんpage

何か助けはありますか?

0 投票する
2 に答える
444 参照

ruby - APIのRSpecテストをリファクタリングする方法

SinatraベースのAPI用の一連のRSpecテストがあります。それらをリファクタリングして、少し単純にし、繰り返しを減らしたいと思います。

ルートのテストの例を次に示します。

各テストは同じベースURLを使用し、同じセッションデータを使用します。唯一の違いは、パラメーターと応答の内容です。ルートごとに少なくとも4つのテスト(GET、POST、PUT、DELETE)があり、通常はそれ以上です。

これらのテストをより管理しやすくする方法はありますか?

0 投票する
1 に答える
387 参照

capybara - Capybar RackTest はボタンをクリックまたは検索できませんが、Selenium はできます

Capybara (2.0.0) を使用した Cucumber テストで問題が発生しています。

page.htmlRackTest での実行時に生成される (有効な) htmlは次のとおりです。

Capybara メソッドclick_on("Show Stuff")は次のエラーを返します。

Selenium ドライバーを使用すると問題なく動作します。興味深いことに、別のソースが生成されます。page.html

ご協力いただきありがとうございます!それが必要!

0 投票する
8 に答える
9165 参照

ruby - Ruby でメモリ内の zip ファイルを反復処理する方法

単体テストを作成していますが、そのうちの 1 つが zip ファイルを返しています。この zip ファイルの内容を確認し、そこからいくつかの値を取得して、値を次のテストに渡したいと考えています。

Rack Test を使用しているので、zip ファイルの内容がlast_response.body. RubyZipのドキュメントを調べましたが、常にファイルが必要なようです。単体テストを実行しているので、可能であればテスト zip ファイルでフォルダーを汚染しないように、すべてをメモリ内で実行することを好みます。

0 投票する
1 に答える
2151 参照

ruby-on-rails - ラック テストの失敗: JSON 要求に対する応答がまだありません

Yehuda Katz の著書Rails 3 in Actionの第 13 章で提供されているTicketeeの例に従って、Ruby プロジェクト用の JSON API を作成しようとしています。353 ページで説明されている RSpec テストを私の環境に合わせたものを次に示します。

テストを実行すると、次の出力が得られます...

これが私が使用するヘルパーモジュールです...

: この質問はRspec と Rack::Test を使用した REST-API 応答のテストに似ています。

0 投票する
1 に答える
3058 参照

ruby-on-rails - 応答がファイルかどうかを確認するにはどうすればよいですか?

Railsのコントローラーアクションの応答がファイルであるかどうかをテストするにはどうすればよいですか?(ラックテストまたはカピバラ)

それを行うために単体テストを使用する必要がありますか?

シナリオは単純です。データベースからエクスポートされたユーザーが、アクションから生成された.csvに含まれているものと同じであるかどうかをテストする必要があります。

0 投票する
1 に答える
1325 参照

ruby - シナトラとルビーでラックタイムアウトをテストする

これは簡単なことだと思っていましたが、rack-timeout gem のテストに関して問題が発生しています。いくつかのロジックを実行するエンドポイントを持つシナトラ基本クラスがあります。

Rack-timeout gem の詳細については、こちらを参照してください。失敗するまでに数秒以上かかることがわかっているリクエストを送信できるテストをセットアップしようとしています。

これまでのテストはこちら

これを行う方法はいくつかありますが、それらがどのように実装されるかはわかりません

  1. {sleep 3} へのテストの一部として '/dosomething' メソッドをオーバーライドします
  2. 上記と同じことを行いますが、スタブ ライブラリまたはモッキング ライブラリを使用します。
  3. テストで get "/dosomething" を使用する代わりに、リクエストを開いたままにする net::http レスポンスを作成します。

これについての考えは非常に高く評価されます。

0 投票する
3 に答える
2356 参照

ruby-on-rails-3 - Ruby on Rails 3 - 未定義のメソッド「has_content?」「ホームページ」の場合:文字列

私はRubyが初めてで、最初のプロジェクトを始めたばかりです。rspec を使用して最初のテストを実行しようとしたときに失敗しました。

これは私のgemfileです:

ここに私のhome_pages_spec.rbがあります

私が走るとき

私は得る

私を助けてください、私は少し検索して同様の問題を見ましたが、それほどではありません..さらに、それらは少し古く、以前はバグであったものは今ではありません。

さらに、なぜ私がvisitコマンドを使用できないのか(RSpec::Core::ExampleGroup::Nested_1の未定義メソッド「visit」も...)、getコマンドを使用しなければならない理由を説明できれば、それは素晴らしいことです