タグ

seleniumに関するlizyのブックマーク (79)

  • クロスブラウザテストの闇と闇と闇

    https://d-cube.connpass.com/event/149831/ スライド中「エンジニアの斎藤」という謎の人物が出てきますが、「エンジニアの採用」の誤記でございました。お詫び申し上げます。

    クロスブラウザテストの闇と闇と闇
  • E2EテストをSelenium Webdriver からCypress.io に移行した話 - 一休.com Developers Blog

    こんにちは。 一休.comの開発基盤を担当しています、akasakasです。 今回は、E2EテストをSelenium WebdriverからCypress.ioに移行した話をしたいと思います。 一休のE2Eテスト事情 あれから、数年が経過して、、、 どうしてこうなった??? SeleniumではSPAへの対応が難しくなってきた なんでもかんでもSeleniumで頑張ろうとした弊害 いざリプレイスへ・リプレイスをする上で気をつけたこと 開発者フレンドリー 安定性 然るべきレイヤーでテストする(何でもかんでもブラウザテストにしない) 技術選定 Cypress.io とは? Cypress.io のいいところ セットアップが楽 テストを書くことだけに集中できる CI連携が楽 Cypress.io の頑張って欲しいところ その他、移行に関しての細かい話 重複テストケースの排除 Page Objec

    E2EテストをSelenium Webdriver からCypress.io に移行した話 - 一休.com Developers Blog
  • AWS LambdaでChrome HeadlessドライバをAWS Lambda Layersから使う | ヤマムギ

    この記事はSelenium/Appium Advent Calendar 2018に参加した記事です。 新機能のAWS Lambda Layersが発表されました。 これまでAWS Lambdaのコードファイルが50MBぎりぎりだとか悩まなくてもよくなりますし、コードを更新するたびに重たいアップロードをしなくてもよくなります。 AWSもストレージ容量が減らせるのではないでしょうか。 LambdaChrome Headlessドライバを使ってスクレイピングをしているのですが、コードのzipファイルが48MBとかなので、制限ぎりぎりです。 これ以上何かを増やすと制限にひっかかります。 そして、ファイルが大きすぎてマネジメントコンソールから直接コードが編集できませんし見えません。 そこで登場したAWS Lambda Layers。 これは使うしかないでしょうということで、試してみました。 過去

    AWS LambdaでChrome HeadlessドライバをAWS Lambda Layersから使う | ヤマムギ
  • 「WebDriver」がW3Cの勧告に到達。Webブラウザのテスト自動化などを実現

    Web技術の標準を策定するWorld Wide Web Consortium(W3C)のBrowser Testing and Toolsワーキンググループは、「WebDriver」が6月5日付けで勧告に到達したことを発表しました。 WebDriverは、Webブラウザを外部から操作することを可能にし、Webアプリケーションのテストなどの自動化を実現する技術です。 主要なWebブラウザにはすでにこのWebDriverの機能が用意されています。Seleniumに代表されるWebブラウザ自動化ライブラリを利用することで、WebDriverを用いてWebアプリケーションのUIテストなどを自動化することが可能です。 SeleniumからW3Cへ もともとWebブラウザには外部から操作を行うAPIなどはなく、WebページやWebアプリケーションをWebブラウザで表示した際に画面が正常に表示されている

    「WebDriver」がW3Cの勧告に到達。Webブラウザのテスト自動化などを実現
  • 最近のselenium-webdriverの話 - Qiita

    こんにちは、@nazomikanです。 この記事はLIFULL Advent Calender2017 その2の3日目の記事です。 昨年のAdvent Calenderでselenium-webdriver(node)のapi翻訳記事を書きましたが、その当時対象としてた2系から現在はメジャーバージョンアップを挟んで色々と現状が変わってきてるのでその辺の話をします。 ローカルモードでのテスト時にselenium standaloneサーバが不要に v2.43のチェンジセットでFireFoxのネイティブサポートが追加されて、remoteでの実行時を除いてサポート対象の全てのブラウザがstandaloneサーバなしで実行できるようになりました。 (chrome/phantomjsのネイティブサポートは2.34) ※のちにphantomjsとoperaのサポートは切られる ※この当時サポート対象で

    最近のselenium-webdriverの話 - Qiita
  • DockerでSelenium Gridを構築して複数マシンのブラウザ自動テストを行う

    illustration by iwasawa Selenium Gridとは Seleniumには、複数のマシンで分散してブラウザ操作の自動化を実現するSelenium Gridという仕組みがあります。Selenium Gridを利用すると、Google ChromeやFirefoxやMicrosoft Edge等の多種多様なブラウザを一括で管理することができ、一つのテストスクリプトからクロスブラウザテスティングを行うことができます。 Selenium Gridは、ハブという管理サーバに、テストに必要なブラウザを持つノードが接続する構成をとります。これにより、テスト条件に合うノードが自動的に選択され、利用できるようになっています。 ハブには複数のノードが接続できますので、CI環境のように並列的にブラウザを動作させる必要がある環境でよく利用されています。 Selenium Grid Doc

    DockerでSelenium Gridを構築して複数マシンのブラウザ自動テストを行う
  • Groovy製のSeleniumラッパーライブラリ「Geb」で、可読性の高いテストを書いてみよう

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    Groovy製のSeleniumラッパーライブラリ「Geb」で、可読性の高いテストを書いてみよう
  • 8月にリリースされたFirefox 55以降ではSelenium IDEが動作せず、Seleniumオフィシャルブログで報告。今後の方向性は?

    8月にリリースされたFirefox 55以降ではSelenium IDEが動作せず、Seleniumオフィシャルブログで報告。今後の方向性は? 8月9日にリリースされたFirefox 55ではSelenium IDEが動作しなくなっていることが、8月9日付けの「Official Selenium Blog」に投稿された記事「Firefox 55 and Selenium IDE」で報告されています。 Selenium IDEとは、ブラウザ自動化ツールSelenium関連のソフトウェアのひとつ。ブラウザの操作をコマンドとして記録することができ、それをテストケースとして再利用できるというツールです。Webアプリケーションのユーザーインターフェイス周りのテストなどで便利に使われてきました。 Firefox 55で動作しなくなった原因は、Firefoxの拡張機能の仕組みが従来の「XPI」から、We

    8月にリリースされたFirefox 55以降ではSelenium IDEが動作せず、Seleniumオフィシャルブログで報告。今後の方向性は?
  • SeleniumとWebDriverの最新事情~標準化が進み、さらに強力なテストツールへ! その影でSelenium IDEは……

    illustration by iwasawa これまでのSelenium さて、最新事情に触れる前に、記事をご覧の皆様は既によくご存知かとは思いますが、あらためてSeleniumとは何か、そして現在の形に至るまでの道をおさらいしておきましょう。 Seleniumは、Webブラウザの自動操作ライブラリです。人間がWebブラウザでやるような手作業を、自動的に再現できます。単純作業の自動化に利用できるほか、一般的な自動テストフレームワークと組み合わせることでEnd to End(E2E)テストの自動化を実現できます。Webアプリケーションのテスト作業で苦労されている方にとっては福音のようなライブラリですが、自動テストコードや実行環境の維持・実行時間などが大がかりになりがちで、利用コストは高めです。回帰テストの自動化など、繰り返し利用が多い用途への適用が特に効果的でしょう。 Seleniumの

    SeleniumとWebDriverの最新事情~標準化が進み、さらに強力なテストツールへ! その影でSelenium IDEは……
  • Goではじめてみたブラウザの自動操作 - Qiita

    はじめに 面倒なWEBブラウザの定型作業を自動化したくて。 WEBブラウザの自動操作には定番のSeleniumを利用する。 Seleniumは主にウェブブラウザのテストに利用されているが、テスト用途以外でも利用はできる。 なおウェブスクレイピングが目的であれば、scrapeとかgoqueryなどを利用するほうが簡単。 それでもSeleniumを利用するのは、 実際のブラウザが利用できるという点であり、以下のような利点があると思っている。 IEなど特定のブラウザのみをサポートしているサイトの自動操作 ごりごりのJavascriptやFlashを利用されているサイトの自動操作 証跡として画面のスクリーンショットを取得できる 前提知識 WebDriverを介することで、スクリプトとしてJava,C#,Pythonなど多くの言語から利用できる ブラウザごとにWebDriverが用意されており、1つ

    Goではじめてみたブラウザの自動操作 - Qiita
  • SeleniumのUIテスト自動化をiOS/AndroidにもたらすAppiumの基礎知識とインストール方法、基本的な使い方

    Appiumの主な特徴は以下の通りです。 Android 2.3.3以降、iOS 6.0以降に対応している Webブラウザーを使ったテストの自動化で広く利用されているSelenium WebDriver(「Selenium 2」とも呼ばれます)と、ほぼ同じ書き方でスマートフォンアプリのテストスクリプトを書くことができる RubyPythonJavaをはじめとした、さまざまなプログラミング言語でテストスクリプトを書くことができる Webアプリの自動テストにSelenium WebDriverを利用しているテストエンジニアが、少ない学習コストで、AndroidやiOSのアプリの自動テストにも着手できる、という点がAppiumを採用するメリットといえます。 Appiumは、バージョン1.0を境に、テストスクリプトの書き方(API仕様)が大きく変更されています。 そのため、バージョン1.0未満

    SeleniumのUIテスト自動化をiOS/AndroidにもたらすAppiumの基礎知識とインストール方法、基本的な使い方
  • WinAppDriver: Selenium に似た Appium のテストを使用して、Windows であらゆるアプリのテストを実行

    過去のブログ記事をさかのぼってみたところ、私は 2007 年から Selenium の Web テスト フレームワークを使用していました (英語)。現在では、Microsoft Edge を含む各種 Web ブラウザー向け (英語) の Selenium ドライバーが提供されており、RubyPythonJava、C# など、現在使用されているほぼすべての言語 (英語) で Selenium テストを作成することができます。 私は Selenium (英語) を愛用しており、BrowserStack などのシステムと併用 (英語) して、各種 OS でさまざまなブラウザーのテストを自動化しています。 "Appium" は Selenium 風の優れたテスト フレームワークで、以前の JsonWireProtocol に相当する "WebDriver (英語)" プロトコルが実装されていま

    WinAppDriver: Selenium に似た Appium のテストを使用して、Windows であらゆるアプリのテストを実行
    lizy
    lizy 2016/12/06
    Win32アプリも自動化出来るのかこれ
  • JenkinsとSeleniumの活用事例

    最近流行っているらしいO/Rマッパ「jOOQ」の話を中心に、どうやってCRUDするのか、SELECT結果をどうやってJavaクラスにマッピングするのか、joinとかどうするのか、springframework (spring-boot)などとどう組み合わせるか、そんな話を講義形式で30-40分ほどでお話します。 日時:2016年2月8日(水)19:30〜20:30(19:15開場) 場所:株式会社ビズリーチ 東京都渋谷区渋谷2-15-1 渋谷クロスタワー 12F 参加費:無料 持参物:名刺1枚(名札用)

    JenkinsとSeleniumの活用事例
  • 40通り以上の自動マルチブラウザテストをSelenium x CircleCI x BrowserStackで実現する| PLAID engineer blog

    こんにちは。プレイドの@sdaikichiです。現在のトレーナーレベルは22、捕まえたポケモンは103種です。 前回の@positiveflatの記事ではプレイドにおける自動テスト環境をご紹介しました。 今回は、プレイドが __40通り以上の環境__を対象に __すべて自動__で ついでに__CircleCIのコンテナリソースもそんなに使わない__で マルチブラウザテストを実現している環境についてご紹介します。 目次 なぜマルチブラウザテストが必要なのか BrowserStackの紹介 運用してみてわかったコツ まとめ 最後に なぜマルチブラウザテストが必要なのか KARTEをお客様が利用する際には、来訪者をトラッキングしたり接客サービスを表示するためのscriptタグをお客様サイトに埋め込んでいただきます。 (接客サービス配信のイメージ) お客様サイトには当然様々な環境(OS,ブラウザ,

    40通り以上の自動マルチブラウザテストをSelenium x CircleCI x BrowserStackで実現する| PLAID engineer blog
  • Seleniumデザインパターン & ベストプラクティス

    書はSelenium WebDriverを使ったテストの構築方法やデザインパターン、メンテナンス性に焦点を当てた書籍です。Seleniumを使った人ならわかるテスト時の取り入れるべき事柄や避けるべき事柄をパターン化してわかりやすく解説しています。テストをリファクタリングする方法、自動テストプロジェクトにおけるSpaghettiパターン、テストデータについて、テストを安定させるコツ、さらにテストスイートを成長させるヒントなど、テスト自動化設計におけるポイントを幅広く紹介します。ベストプラクティスだけでなく、アンチパターンも紹介しているため、失敗の原因を知り、適切な設計パターンを適用することができるようになります。 目次 まえがき 監訳者まえがき はじめに 1章 最初のテストを書く 1.1 Selenium を選択する 1.1.1 適材適所 1.1.2 価格 1.1.3 オープンソース 1.

    Seleniumデザインパターン & ベストプラクティス
  • SeleniumサーバもDockerで。「Docker Selenium」レビュー | さくらのナレッジ

    DockerIT界隈で広まりつつも、なかなか実践的に使うことができないという人は多いのではないかとかと思います。しかし何もサーバ運用環境として使わずとも、使いどころはあります。その一つがサーバソフトウェアのインストールです。 サーバソフトウェアはインストールの手間と、その後のバージョンアップや他のソフトウェアで使っている共通ライブラリのコンフリクトなど、とかく運用が面倒です。基幹系システムが入っているサーバに他のソフトウェアをインストールするのは躊躇しますよね。 そういったときにDockerを使えばそれぞれのソフトウェアの環境が分けられるのでセキュリティ、運用的に安心できます。今回はその一つとしてDocker Selenium、Dockerを使ったSeleniumサーバを紹介します。 Docker Seleniumのインストール インストールはとても簡単です。なおDockerはインストー

    SeleniumサーバもDockerで。「Docker Selenium」レビュー | さくらのナレッジ
  • Testing your app with Selenium on Travis CI

    PHPConference New Zealand edition.

    Testing your app with Selenium on Travis CI
  • JenkinsとSelenium WebDriverでUI層のテストも自動化&永続化する - プログラマでありたい

    思い立ったようにJenkins特集をしておりますが、今回はJenkinsとSelenium WebDriverでUI層のテストの自動化をする話です。Seleniumは面倒臭い画面のテストを自動実行してくれるツールで、出てきてからもう7〜8年がたちます。Web系の開発に携わっている人であれば、一度は試したことがあるのではないでしょうか?そして、必ず挫折したことがあると思います。 その理由としては、せっかく作ったSeleniumのテストケースが腐ってくるからです。一般的にはUI層の変更は、ロジック層に比べて変化が激しいです。だからこそテスト自動化して保証することに意味があるのですが、そのテストケースを維持するのは大変です。そこで、Jenkinsの登場です。Jenkinsでサーバサイドで継続的に実行することにより、Seleniumのテストケースが成功を保てるようにします。また、複数のブラウザ・バ

    JenkinsとSelenium WebDriverでUI層のテストも自動化&永続化する - プログラマでありたい
  • さよなら手作業・人海戦術! HTML5時代のツール「Selenium2」でWebシステムのテストを自動化

    シリーズは、WebブラウザをUIとして利用した業務システムやアプリケーション(以下、Webシステム、Webアプリケーション)のテストをテーマとして、Webブラウザを使ったテストを自動化するOSSのツール「Selenium2」を紹介します。業務システム開発の現場で適用してきたノウハウを元に、これまでSelenium2について知らなかった人から以前使った経験がある人まで、より実践的な「使える」内容を盛り込んでいきたいと思います。 シリーズのスコープと対象読者 シリーズはWebシステム・Webアプリケーションのテストの中でも「Webブラウザを操作して実施するテスト」をスコープにしています。開発工程としては、1モジュールとして単体テストに位置付けられる場合もあれば、複数のモジュールやシステムと連携して結合テストや総合テストに位置付けられる場合もあるでしょう。これらのテストのことを、シリーズ

  • UIマッピングを使って、Selenium IDEのテストスクリプトを効率よくメンテナンスする | MagicPod Tech Blog | MagicPod: AIテスト自動化プラットフォーム

    「name=your-name」「css=input.button」のような、操作対象の画面要素を特定するための記述(「ロケーター」と呼びます※1 )が、何箇所にも分散しています。 「UIマッピング」とは、この分散したロケーターを、UIマップファイルという1つのファイルで集中管理する手法です。(図2) ロケーターに「inputName」「buttonSearch」などのわかりやすい別名をつけ、テストスクリプト中ではロケーターでなくこの別名を使用します。 UIマッピングを行うと次のようなメリットがあります。 画面のHTMLが変わった場合に、UIマップファイル中のロケーターだけを書き換えればよいので、メンテナンスの手間が大きく軽減されます。 わかりやすい別名を使用することでテストスクリプトが読みやすくなります。 ちなみに、UIマッピングをさらに洗練させたページオブジェクトデザインパターンという

    UIマッピングを使って、Selenium IDEのテストスクリプトを効率よくメンテナンスする | MagicPod Tech Blog | MagicPod: AIテスト自動化プラットフォーム