RSpec

Capybaraでブラウザサイズを指定する

環境 MacOSX 10.11 RSpec 3.3.2 Capybara 2.5.0 対策 visit ののちに以下のスクリプトを記述する。 feature "管理側: イベント/チケットの作成", js: true do scenario "イベント/チケットの作成", js: true do visit 'https://xxx.com' # ブラウザのサイズ…

CapybaraでJavaScriptを実行

page.execute_script "alert('xxx');" で実行可能。 require "selenium-webdriver" require 'capybara/rspec' require 'pry' # RSpecにCapybaraのDSLを設定 RSpec.configure do |config| config.include Capybara::DSL end # Capybaraで設定するドライバー:S…

RSpecの実行で `split' invalid byte sequence in Windows-31J (ArgumentError)

環境 Windows 7 Ruby 2.1 RSpec 3.4.1 エラー内容 rbファイルを実行しようとすると invalid byte sequence in Windows-31J (ArgumentError) とエンコードエラーが走る。 > rspec xxx.rb `split' invalid byte sequence in Windows-31J (ArgumentError) 対策 …

CapybaraでBasic認証を入力せず実行する

環境 MacOSX 10.11 RSpec 3.3.2 Capybara 2.5.0 app_hostのURLを変更する Capybara.app_host = 'http://username:password@xxx.com' 結果 成功。

Capybaraでクリックできない場合の対処法

環境 MacOSX 10.11 RSpec 3.3.2 Capybara 2.5.0 事前に見るべきリファレンス capybara-readme-ja 事象 テストは通っているが、どうもボタンを押していない。ということが少なからずある。 Facebookのログインページのボタンだ。 % rspec xxtest.rb Run optio…

undefined method `accept_js_confirms' for #<Selenium::WebDriver::...>

環境 MacOSX 10.11 RSpec 3.3.2 Capybara 2.5.0 事象 モーダル内の"OK"ボタンを押そうと以下のように記述したが、JSを扱うcapybara-webkitがインストールされていないため、エラーが吐かれた。 # OKボタンを押す page.driver.browser.accept_js_confirms エ…

Capybara-webkitがインストールできない

環境 MacOSX 10.11 RSpec 3.3.2 Capybara 2.5.0 事象 エラーログ Gem::Ext::BuildError: ERROR: Failed to build gem native extension. /usr/local/var/rbenv/versions/2.2.3/bin/ruby -r ./siteconf20151117-6663-1lh78uk.rb extconf.rb /Users/okamoto/ve…

Ambiguous match, found 2 elements matching link

環境 MacOSX 10.11 RSpec 3.3.2 Capybara 2.5.0 事象 Ambiguous match, found 2 elements matching link 2つの要素が見つかった旨のエラーが表示される。 % rspec test.rb Run options: include {:focus=>true} All examples were filtered out; ignoring {:…

embedded document meets end of file (SyntaxError)

環境 MacOSX10.11 RSpec 3.3.2 現象 % rspec test.rb (master) /usr/local/var/rbenv/versions/2.2.3/lib/ruby/gems/2.2.0/gems/rspec-core-3.3.2/lib/rspec/core/configuration.rb:1327:in `load': /Users/okamoto/Sites/auto-test/project/test.rb:145: em…

undefined method `feature' for main:Object (NoMethodError)

環境 MacOSX 10.11 rspec 3.3.2 現象 rspecを実行したところ、undefinedエラーが発生。 % bundle exec rspec xxx.rb undefined method `feature' for main:Object (NoMethodError)... 対策 {project}/spec/spec_helper.rbのconfig.disable_monkey_patching!…

warning: loading in progress, circular require considered harmful -

環境 MacOSX 10.11 rspec -v: 3.3.2 現象 bundle exec rspec xxx を実行すると下記エラーが表示される。 warning: loading in progress, circular require considered harmful - /Users.... spec_helper.rbを編集するパターン vi {project}/spec/spec_helper…

RSpecをAppiumで書く

環境 MacOSX 10.11 nodebrew 5.0.0 npm 3.3.6 Node 5.0.0 Appium 1.4.13 更新日時: 2015/11/05 事前準備: nodebrewによるnpmのインストール hrt0kmt.hatenablog.com Appiumのインストール % npm install -g appium // sudoを用いる場合は sudo npm install -…

CapybaraでChromeを実行させる際の基本設定

ChromeDriverのインストール Chromedriver.storage.googleapis.comから、最新版のChromedriverをインストールする。 テストケース内に設定を記述 # Project test" require "selenium-webdriver" require 'capybara/rspec' require 'pry' # RSpecにCapybaraの…

CapybaraによるUI自動化ドキュメント

自動テスト実施による費用対効果の洗い出し なぜやるのか 自動化により、テストのコストを下げるため。 どうやるのか RSpec + Capybara + Selenium ( + Poltergeist + FactoryGirl ) それはなに RSpec Rubyで実装されたBDDのテストフレームワークの一種。自…

自動テストのためにBundlerとrbenvの環境構築を行う

環境 MacOSX 10.11 Ruby 2.2.3 rbenv 0.4.0 rbenvは単純にRubyのバージョン(を入れ替える)管理ツール。BundlerはRubyのライブラリ管理ツール。 ホーム配下へのインストール rbenv ディレクトリの作成 % git clone git://github.com/sstephenson/rbenv.git …