ウェブサイトのテストプログラムは、Page Object Modelで書くのが良いとされている。 SitePrismとCapybaraを使うことで、画面をコード化する部分と画面を操作する部分を綺麗に分けてプログラムコードにすることができる。その結果、変化に強いテストプログラムを作ることが可能になる。 ぺージオブジェクトパターンでないテストプログラムSeleniumを使ってWebサイトのテストコードを書くのテスト対象は、ページ数が少なく、かつ、シンプルなページのため、Page Object Modelにする良さがわかりにくい。そこで、複数のページ遷移を確認するテストを用意した。Yahoo! JAPANから三重県津市の天気のページへ移動できるかというテストだ。 #! ruby # -*- mode:ruby; coding:utf-8 -*- require 'capybara/rspec'
![SitePrismを使ってSelenium+Capybaraのテストをぺージオブジェクトパターンで書く](https://cdn-ak-scissors.b.st-hatena.com/image/square/dace44dc676931edb38cdcc4b20b4adf9346482c/height=288;version=1;width=512/https%3A%2F%2Ftech.blog.home.group.jp%2Fwp-content%2Fuploads%2F2016%2F05%2Frspec-se-docker.png)