2017.10.06 週刊Railsウォッチ(20171006)PostgreSQL 10ついにリリース、Capybaraコードを実画面から生成するnezumiほか こんにちは、hachi8833です。暑がりさんなので今日も扇風機にあたっています。 それでは10月最初のウォッチ、いってみましょう。なお「Rails: 今週の改修」は本家で更新がありませんでした。 号外: PostgreSQL 10が正式リリース プレスリリース: PostgreSQL 10 Released 9月後半にPostgreSQL 10 RC1がリリースされていたので記事にしようと思っていましたが、昨晩正式版がリリースされたので急遽差し替えました。 記念写真を取るためにとりあえずインストールして動かしてみました。MacのHomebrewでインストールしていたPostgreSQL 9をbrew services sto
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community. Pick a username Email Address Password Sign up for GitHub By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails. Already on GitHub? Sign in to your account
Running feature specs with Capybara and Chrome headless July 05, 2017 – Tim Petricola – 2-minute read This article was written before Drivy was acquired by Getaround, and became Getaround EU. Some references to Drivy may therefore remain in the post At Drivy, we’ve been using Capybara and PhantomJS to run our feature specs for years. Even with its issues, PhantomJS is a great way to interact with
I’ve been a happy user of Capybara-WebKit for many years now, but its dependence on Qt can make it frustrating to install on macOS, particularly following macOS or Xcode updates. One such recent issue lead me to experiment with running my tests in Chrome via ChromeDriver and Selenium. I found the installation of ChromeDriver and Capybara-Selenium to be significantly faster than the installation of
I'm a London based Ruby consultant. Visit my website for more information. Introduction In this tutorial, we’ll cover how to do integration tests in Rails using Minitest and Capybara. We’ll also cover how integration tests can sometimes serve as a replacement for controller tests. Prerequisites To follow this tutorial, you’ll need to have Ruby installed along with Rails. This tutorial was tested u
Pagination のテストのために、最初は以下のようなコードを書いていたのですが、一つのページ内に複数のPagination を表示するページなので、一番上のブロックのみを確認することにしました。 find("//*[@class='pagination']//a[text()='2']").click expect(page.status_code).to eq(200) これに、以下のように *[@class='pagination'] の末尾に [1] を追加したのですが Capybara::ElementNotFound になってしまいます。 find("//*[@class='pagination'][1]//a[text()='2']").click expect(page.status_code).to eq(200) Test 環境ではなく Development 環境
Adding subdomains to a Rails application is an easy task today, but things can get a little trickier when testing is involved. For starters, you may only need to handle subdomains at the routing level, which is quite easy. But after the easy step some troubles may be awaiting for you. In our example we want to add an “admin” subdomain to a brand new app. We edit the file routes.rb as follows and w
If you’re a Ruby or Rails developer looking for some advice on how to get better at integration testing: congratulations! You’ve reached the highest level of difficulty in all of the areas of the stack you must conquer to become a great Ruby developer. Integration testing is hard, but it doesn’t have to be. This the subtle of this truth lies in the fact that you must be skilled in both the backend
Navigation > > visit visit visit navigates to a particular path. Pass a string or use one of Rails’ path helpers. visit '/blog' visit blogs_path > > click_on click_on click_on will click an anchor tag, button, or input with type submit. Pass a string containing the anchor text. click_on 'Sign in' click_on 'Submit' Page Interaction and Scoping > > has_css? has_css? has_css? returns a boolean value
If you use Docker to deploy your Rails application you may want to use the same infrastructure to run your tests. However the setup of your Selenium browser tests is far from obvious with Rails and Docker and may generate some confusion 1 2 3 4 5. The short answer is available in this repository on Github. For the long answer keep reading this blog post for a step by step tutorial! Dockerize Rails
Ever tested a page with a lot of AJAX-Actions and encountered some strange bugs? If you are using Poltergeist there are good news. Poltergeist is a driver for Capybara that runs your tests in PhantomJS. Let’s say you have a page with a button which sends an AJAX-Request, but something didn’t work. If you are in the browser the first thing you’ll do is to open the DevTools and look for errors in th
RSpec + Capybara のセットアップは簡単でいいんですが、javascriptのテストができません。 いざ本当にウェブサイトやウェブアプリのテストしようと思ったらjavascriptのテストは必須。 それを可能にするには意外にも長い道のりがあるので、まとめておきます。 想定する開発環境はこんな感じ。 Vagrant (Virtual box) CentOS 6.4 ここでつまずいたらドットインストールで学習 ローカル開発環境の構築 (全12回) - プログラミングならドットインストール Vagrant入門 (全13回) - プログラミングならドットインストール Rails4 RSpec Capybara テストについてよくわからなければ、このチュートリアルで学習。 Ruby on Rails チュートリアル:実例を使って Rails を学ぼう テスト駆動開発の定義とは、アプリケ
Capybara.javascript_driver = :poltergeist Capybara.register_driver :poltergeist do |app| Capybara::Poltergeist::Driver.new(app, :js_errors => false, :timeout => 60) end とすればよいとわかった。各オプションについて以下に説明する。 :js_errors :js_errors => falseにしたのはCapybara::Poltergeist::JavascriptError: というエラーを防ぐため。JSのエラーはよくあることなのだが、エラーが出るたびにCapybaraを止めるのは時間の無駄。ということで、JSのエラーは無視することにした。 :timeout Timeoutはデフォルトでは30秒。しかし、ログインのような時
— 環境 — rails-4.0.1 rspec-rails-2.14.0 capybara-2.2.0 User モデルでの form_for の中で Rails ヘルパーでフォーム要素を作成し、出力される HTML を併記しています。また、それに対する RSpec + Capybara でのテストの書き方。 radio button(ラジオボタン) <%= f.radio_button :gender, 'male' %> 男性 <%= f.radio_button :gender, 'female' %> 女性 ↓ <input id="user_gender_male" name="user[gender]" type="radio" value="male" /> 男性 <input id="user_gender_female" name="user[gender]" type
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く