問題タブ [capybara-webkit]
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.
testing - セレン自体を直接使用できるのに、なぜカピバラを使用する必要があるのですか?
私が読んだことから、セレン自体には実際にWebページの相互作用を模倣するコマンド(およびgem)があるので、カピバラを使用する必要は何ですか?
ruby-on-rails - capybara-webkit-Railsセッションが保持/設定されていません
統合テスト用にcapybara-webkitをセットアップしましたが、非常に単純な問題が発生しました。セッションが保存されていません。ユースケースは非常に単純です
ステップ2で、アプリはテストケースをログインページに戻します。これは、セッションが正しく設定されていないことを意味します。
どんな助けでも大歓迎です
@javascriptの代わりに@culerityを使用すると、このテストケースに合格するため、問題はcapybara-webkitのセットアップにあるようです。
capybara-webkitサポートの私のenv.rbは次のとおりです
更新1:セッションが設定されているようです。次のコードを使用して、手順でセッションをダンプしました
そして、私は次のようになりました-クッキーが設定されているように見えますが、返送されていません
【 "_jqt_session = BAh7CEkiD3Nlc3Npb25faWQGOgZFRiIlYmMwYzNjYjY0MGU3NTg0OWFlNTcwODhmM2I2MzE1YmRJIhBfY3NyZl90b2tlbgY7AEZJIjEwRzN6NG1NTzZqamNCNC9FdWZWeXBCMHdoeThueXBnaTJDcTVzbmJqQlBZPQY7AEZJIgpmbGFzaAY7AEZJQzolQWN0aW9uRGlzcGF0Y2g6OkZsYXNoOjpGbGFzaEhhc2h7BjoKYWxlcnRJIh9JbnZhbGlkIGVtYWlsIG9yIHBhc3N3b3JkLgY7AFQGOgpAdXNlZG86CFNldAY6CkBoYXNoewY7B1Q%3D - 3fbe1c2a77a433228e7b7f2d8c8f0aec3ad5fb5f; HttpOnlyの、ドメイン= localhostを、パス= /"]
アップデート2:間違った木を吠えていました。データベースクリーナー戦略がトランザクションに設定されているため、テストケースで作成していたユーザーがrailsアプリに表示されていなかったようです。詳細については、 https://groups.google.com/forum/#!msg / ruby-capybara / JI6JrirL9gM/ R6YiXj4gi_UJをご覧ください。
ruby-on-rails-3 - Capybar-webkit が example.com を開こうとする
カピバラ、カピバラ-webkit、カピバラ-スクリーンショットをキュウリと一緒に使用しています。(Ruby 1.9.3、Rails 3.1.3) であり、Capybara.javascript_driver = :webkit
env.rb も設定されています。
@javascript
残念ながら、何らかの理由でcucumber spec を実行しても成功せず、エラーのスクリーンショットは example.com をキャプチャするだけです。
私が実際に開こうとしている URL は、私のモデルの 1 つのレール ルーターの結果で生成されます。visit products_url
では、example.com へのクエリを回避するにはどうすればよいでしょうか?
どんな入力でも大歓迎です。
コメントが台無しになっているという理由だけで-これが私が見つけた解決策です:
jquery - Cucumber (rails 2) が jQuery をロードしていません
でタグ付けされたキュウリのシナリオがあり@javascript
、いくつかの非常に基本的なインライン js 呼び出しでテストしています。私はこれを使用して実行しています
Capybara.javascript_driver = :webkit
ページでこれを行う場合、問題の要素 (id="ajax_test_results" を含む) の後、今のところ ajax について心配する必要はありません)
テストでページをレンダリングすると、js が実行され、コンテンツが更新されたことがわかります。しかし、jqueryで同じことをしようとすると
それは機能しません。jquery がロードされていないと思いますが、デバッグの方法がわかりません。
アイデアはありますか?https://stackoverflow.com/questions/8428405/cucumber-tests-jquery-does-not-loaded-in-webdriverに期待できるこの投稿を見ましたconfig.assets.debug = true
が、エラーが発生しました-レール3のみだと思います。Rails 2に相当するものはありますか? または他の解決策?
アドバイスに感謝します-最大
ruby-on-rails - Capybara-webkitはCapybara::Driver :: Webkit::WebkitInvalidResponseErrorを発生させます
rspecのwebkitドライバーから次のメッセージが表示されました。
数日前、それは機能しました。問題はsave_page
方法にあります。何が間違っている可能性がありますか?
ruby-on-rails-3 - rails 3.1, capybara-webkit のインストール, gem ネイティブ拡張のビルドに失敗しました。
capybara-webkit (0.8.0) をインストールしようとしていますが、以下のエラーが表示されます。ubuntu 11.10 を使用しています。
ネイティブ拡張機能を使用した capybara-webkit (0.8.0) のインストール Gem::Installer::ExtensionBuildError: エラー: Gem ネイティブ拡張機能のビルドに失敗しました。
/home/sam/Documents/RoR/course_builder/CDPATH=/ruby/1.9.1/gems/capybara-webkit-0.8.0/src/webkit_server.pro -spec /usr/share/qt4/mkspecs/linux-g++ - o Makefile.webkit_server /usr/bin/make cd src/ && make -f Makefile.webkit_server make[1]: ディレクトリに入る
/home/sam/Documents/RoR/course_builder/CDPATH=/ruby/1.9.1/gems/capybara-webkit-0.8.0/src' g++ -c -pipe -O2 -Wall -W -D_REENTRANT -DQT_WEBKIT -DQT_NO_DEBUG -DQT_WEBKIT_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtNetwork -I/usr/include/qt4/QtGui -I/usr/include/qt4/QtWebKit -I/usr/include/qt4 -I. -o RequestedUrl.o RequestedUrl.cpp make[1]: g++: Command not found make[1]: *** [RequestedUrl.o] Error 127 make[1]: Leaving directory
/home/sam/Documents/RoR/course_builder/CDPATH=/ruby/1.9.1/gems/capybara -webkit-0.8.0/src' make: * [sub-src-webkit_server-pro-make_default-ordered] エラー 2make cd src/ && make -f Makefile.webkit_server make[1]: ディレクトリに入る
/home/sam/Documents/RoR/course_builder/CDPATH=/ruby/1.9.1/gems/capybara-webkit-0.8.0/src' g++ -c -pipe -O2 -Wall -W -D_REENTRANT -DQT_WEBKIT -DQT_NO_DEBUG -DQT_WEBKIT_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtNetwork -I/usr/include/qt4/QtGui -I/usr/include/qt4/QtWebKit -I/usr/include/qt4 -I. -o RequestedUrl.o RequestedUrl.cpp make[1]: g++: Command not found make[1]: *** [RequestedUrl.o] Error 127 make[1]: Leaving directory
/home/sam/Documents/RoR/course_builder/CDPATH=/ruby/1.9.1/gems/capybara-webkit-0.8.0/src' make: * [sub-src-webkit_server-pro-make_default-ordered] エラー 2Gem ファイルは、検査のために /home/sam/Documents/RoR/course_builder/CDPATH=/ruby/1.9.1/gems/capybara-webkit-0.8.0 にインストールされたままになります。/home/sam/Documents/RoR/course_builder/CDPATH=/ruby/1.9.1/gems/capybara-webkit-0.8.0/./gem_make.out に記録された結果 capybara-webkit (0.8.0) のインストール中にエラーが発生しました)、Bundler は続行できません。
gem install capybara-webkit -v '0.8.0'
バンドルする前に、それが成功することを確認してください。
ruby-on-rails-3 - rails 3.1、capybara-webkit、なぜpage.execute_scriptが失敗するのですか?
capybara-webkitをインストールした後、仕様内でテストを試してみました。テストは次のとおりです。
次に、次のエラーが発生します。
/home/sam/.rvm/gems/ruby-1.9.3-p0@global/gems/bundler-1.0.21/lib/bundler/runtime.rb:136:警告:安全でない世界の書き込み可能なディレクトリ/home/sam/Documents / PATHのRoR、モード040777 undefined | 0 | ReferenceError:変数が見つかりません:$
Capybara :: Driver :: Webkit :: WebkitInvalidResponseError:Javascriptの実行に失敗しました
何かアイデアをお願いします?
ruby-on-rails-3 - rails 3.1、capybara-webkit、リンク内でjavascriptを実行する方法は?
カピバラとのリンクでJavaScriptを実行できますclick_link('next_page')
か?
リンクは次のようになります。
githubのcapybaraで、次のような送信ボタンをクリックしてフォームを送信できることを読みました。
しかし、私の場合、リンクでjavascriptを使用してフォームを送信する必要があるので、javascriptが含まれているリンクをテストするにはどうすればよいですか?click_link('next_page')
十分ではありませんか?
編集
テストを設定する:js=> true
と、次のようになります。
:js => trueの前は、通常どおりページにアクセスできましたが、:js => trueの後でページにアクセスできないことに気付きました。これは、ページにアクセスした後に発生したエラーです。
2012-01-23 06:29:26 +0200(5010.7ms)で127.0.0.1のGET "/student_courses"を開始しました。UPDATE"students"SET "last_sign_in_at" = '2012-01-23 04:29:26.274285'、 " current_sign_in_at "= '2012-01-23 04:29:26.274285'、" last_sign_in_ip "= '127.0.0.1'、" current_sign_in_ip "= '127.0.0.1'、" sign_in_count "= 1、" updated_at "= '2012-01 -23 04:29:26.276279'WHERE"students"。"id" = 1 SQLite3 :: BusyException:データベースがロックされています:UPDATE "students" SET "last_sign_in_at" = '2012-01-23 04:29:26.274285'、 " current_sign_in_at "= '2012-01-23 04:29:26.274285'、" last_sign_in_ip "= '127.0.0.1'、" current_sign_in_ip "= '127.0.0.1'、"sign_in_count "= 1、" updated_at "= '2012-01-23 04:29: 26.276279'WHERE "students"。"id"= 1 HTML:------------__内部サーバーエラー
内部サーバーエラー
トランザクションをロールバックできません-進行中のSQLステートメント
WEBrick / 1.3.1(Ruby / 1.9.3 / 2011-10-30)at 127.0.0.1:34718
では、なぜSQLite3 :: BusyException:データベースがロックされているのですか?!
qt - capybara-webkitまたはネイティブQtWebKitを使用してDOM要素のクリックハンドラーを取得するにはどうすればよいですか?
capybara-webkitを使用していて、イベントハンドラーをDOM内の要素のクリックイベントにバインドしたいと思います。ネイティブのQtWebKit呼び出しを使用した場合でも、RubyのWebkitドライバーを使用してそれを行う方法を理解するにはおそらく十分でしょう。私が抱えている課題は、イベントハンドラーがHTMLではなくJavaScriptでプログラムによってバインドされていることです。これを行う方法に関するこれまでの検索は、QWebViewでイベントをクリックまたはトリガーする方法で終わっているようです。イベント自体を生成せずに、イベントハンドラー(つまり、実際の関数定義)、特にイベントにバインドされた無名関数を検査する必要があります。どんな助けでも大歓迎です。
capybara - capybara-webkit を使用して応答ヘッダーと時間を取得する方法
capybara-webkit を使用して Web ページで個別の ajax リクエストの応答を取得するには?
各リクエストの応答時間を取得するために利用できる特定の方法はありますか?
注:rspecでカピバラを使用しています。
例: Web ページに 3 つの Ajax リクエストがあります。各リクエストの応答時間と Web ページ全体の応答時間を別々に取得する必要があります。
ありがとう、プリヤ