概要 Capybara(selenium-webdriver) + Turnip でテスト書いてて ファイルアップロードの試験やりたいな でもいちいちファイル作るのもめんどいし Tempfile でいいわ みたいな状況になると、このようなステップが表れると思います。 require 'tempfile' step "ファイルを添付する" do tempfile = Tempfile.new tempfile.write 'My name is gongo!' tempfile.rewind attach_file('#upload_file', tempfile.path) end 概ね好調なのですが、ひとつだけ問題があります リモートマシンのブラウザで実行すると失敗する 当然と言えば当然です。ローカルマシン(Ruby実行してるやつ)で作成した一時ファイルパスを リモートマシンで起動したブ
リッチなユーザインターフェースを備えたWebアプリケーションでは、Ajaxやアニメーションなどの非同期処理はよく用いられます。こういったWebアプリケーションをSeleniumでテストする際、従来の静的なユーザインターフェースを持つWebアプリケーションと同じようにテストを作成していると、実際にテストを動かした時に次のような問題が発生することがあります。 存在するはずの要素が見つからない(あるいはその逆) 画面全体、もしくは特定の要素の内容が更新されていない 例えば、以下のようなソースコードです。 ajaxButton.click(); WebElement fooElement = driver.findElement(By.id("foo")); 非同期処理を伴うボタンをクリックした後にfooというIDを持つ要素を探していますが、この要素が非同期処理の完了後に表示される要素であった場合
この記事では、Facebook のあいさつ(Poke)機能への返信を題材に、沢山たまるとウザい嬉しいあいさつを自動で返すスクリプトを書くことで、Selenium2.x の使い方、特に Ajax アプリをテストする方法について学べるようにする。 Ajax がからんだWebアプリケーションのエンドツーエンドの最近のテスト手法についてのまとめにもなっていると思う。 最初の3節ぐらいは「Seleniumとは〜」とか「テストってのはさー」とかゴタクをごたごた書いているので、Seleniumの実際のコード見た方がはえぇよ。って言う人はコードが出てくるまで記事を飛ばすと良い。 こんな記事を気合入れて書いて公開した当日に…FacebookのUIが変わって…作ってたスクリプト動かなくなってしまった…orz。俺が何かやったり買うと事件が起きるんや・・「なにか買うとその直後に安くなったり、新機種がでたりするとい
Selenium 2, the new iteration of the end-to-end web application testing tool, contains some fancy innovations over its 1.x version: it controls browser directly via the OS, instead of generating JS commands. It's also more reliable than the 1.x as it features a different waiting model. After trying out Selenium 2, it was natural for me to look for its support in PHP code; however, there isn't an o
AndroidプログラミングのTOPへ これはWebアプリ開発者にとっても,モバイルアプリ開発者にとっても朗報である。 下図は,「Webアプリ + モバイルアプリの,自動テストツールの技術動向」を表す。 ┌─── Webの自動テスト────┐ ┌モバイルの自動テスト┐ | | | | | Selenium WebDriver | |Robotium─→Sirocco | | (2004, (2009, Google)| | (2010) (2010) | | ThoughtWorks) | | | | | | | | └────────┐ | | | | | | | | | | | | | | | | ↓ ↓ | | ↓ | | Selenium WebDriver | | NativeDriver | | (=Selenium 2.0, 2011/07〜) | | (Google, 20
Webアプリケーションのデザインの確認って大変面倒だよね。 ブラウザ経由での自動テストを行うSelenium周りをいろいろとちゃんとやっていこうと整備し始めたのは、先日のBlog記事通り。 それで、Seleniumの基本的な使い方はあれこれ理解したが、これを、ブラウザ上のデザインのテストにも使えないかと模索を始めた。今回はJava/ScalaのWebフレームワークであるPlayFrameworkをベースに解説するが、Selenium周りはあまり変わらないのではと思う。 Webページ(ビュー)のテストには何があるのか 基本的にビューのテストには3種類あると思っている。 きちんと値が出力されているか 正しい遷移が行えるか きちんと表示がされているか 「きちんと値が出力されているか」「正しい遷移が行えるか」については、まあ普通にSeleniumを使えば出来るので割愛。 Seleniumの基本的な
回帰テストツール「Selenium」の中級 Tips。 初級の使い方については 今から3分で selenium の使い方を身に付ける (回帰テスト自動化) http://language-and-engineering.hatenablog.jp/entry/20081016/1224080409 selenium 主なコマンド一覧 http://language-and-engineering.hatenablog.jp/entry/20081016/1224123118 で入門のこと。 Seleniumのより便利な使い方として,下記で (1)変数の使い方 (2)XPathの使い方 (3)テストケース中へのjavascriptの埋め込み (4)Ajaxアプリのテスト方法 を学ぶ。 まず,まとめを掲載。そのあとで,実際のテストでどう役立つのか詳しく解説する。 まとめ 要素の指定方法まとめ
Selenium RCとは Selenium RCは、 OpenQAによって提供されているSelenium製品ファミリの1つです。 2007/02/02現在、 Apache License, Version 2.0の下に配布されています。 Selenium RCは、 Selenium Remote Control という名が表すとおり、Seleniumテストを遠隔操作するための製品です。 これは、JAVAの Jetty Web Serverを利用した Selenium Server を利用して実現されています。 Selenium RCとは 準備 Selenium RC PHPUnit3.0 インタラクティブモードで実行 PHPUnitから実行 Selenium Serverをデーモンとして実行 サンプルコード 実行 さいごに Selenium RCとは Selenium RCは、 Open
第5回:SeleniumでWebアプリケーションテストを自動化(SeleniumCore−HTML後編) 著者:DTS 大田尾 一作 2007/10/11 「第4回:テストの作成と実施(SeleniumCore−HTML前編)」では、プロジェクトの作成やSeleniumの動作確認を行いました。今回はいよいよテストケースを実際に記述していきましょう。 これまでに述べてきたように、Seleniumは手動でWebブラウザを操作したり、画面を確認する作業をかわりに行ってくれるツールです。したがってSeleniumのテストケースは手動で実施する試験項目(手順)を元に作成するのが基本となります。 ではMyMeiboアプリケーションの結合試験項目1-1を見てください。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く