タグ

seleniumに関するgayouのブックマーク (90)

  • E2Eテスト自動化ツールの最新トレンド──Playwright? ノーコード? Seleniumから多極化の時代へ!

    ウェブサイトやモバイルアプリの、エンドユーザーからみた動作を確認するテストはE2Eテスト(End-to-End Test)と呼ばれ、このE2Eテストの自動化ツールは、アジャイル開発の普及もあって、今では多くの開発現場で活用されるようになりました。ブラウザ操作の自動化ツールSelenium(セレニウム)は日でも有名になり、ご存じの読者も多いでしょう。しかし近年、E2Eテスト自動化の世界では、Seleniumに代わる新たなツールがたくさん登場し、急速に利用者を増やしています。この記事では、これらの新しいE2Eテスト自動化ツールのトレンドについて紹介します。 E2Eテスト自動化トレンドの変遷 筆者はテスト自動化ツールを作る仕事にもう15年近く関わっていますが、これまでのトレンドを見ていくと、「非OSS(非オープンソースソフトウェア)の時代」「Seleniumの時代」「多極化の時代」の3つに分け

    E2Eテスト自動化ツールの最新トレンド──Playwright? ノーコード? Seleniumから多極化の時代へ!
  • ブラウザ自動操作API入門: WebDriver APIとChrome DevTools Protocol(CDP)

    ウェブブラウザを自動操作する際には、WebDriverやChrome DevTools Protocol (CDP) などのAPIが広く利用されています。 これらのAPIを基盤に構築された様々なブラウザ自動操作フレームワークが、テスト自動化の分野で重要な役割を果たしています。 例えば、SeleniumやPlaywrightといったフレームワークを利用して、テストの自動化に取り組まれている方もいらっしゃると思います。 私もテスト自動化フレームワークの便利さを享受する一方で、フレームワークを介さずにブラウザを自動操作する方法についての興味がわいてきました。 そこで、この記事ではWebDriverやCDPが提供するAPIを直接利用してブラウザを操作する方法を基礎から探求してみることにしました。 これにより、私たちが普段利用しているフレームワークの背後にある原理を理解し、より深い知見を得ることを目

    ブラウザ自動操作API入門: WebDriver APIとChrome DevTools Protocol(CDP)
  • ブラウザ自動操作技術の深層へ、直接触れて学ぶ WebDriver と Chrome DevTools Protocol

    ウェブアプリケーションの開発においてE2Eテストの自動化は身近なトピックです。SeleniumやPuppetter、PlaywrightやAppiumなどがブラウザ・ネイティブアプリの自動操作のOSSとしてよく挙げられます。しかし、それらの裏側はご存知でしょうか? トークではこれらのツールの背後にいるWebDriver、Chrome DevTools Protocolsに焦点を当てます。 WebDriver、CDPとはなにか、その違い、仕様について、PHPエンジニアに身近な言語を用いて"直接"実装することを通じて解説します。 トークを通じて直接触れることでライブラリでwrapされている裏側まで知ることできます。E2Eテスト自動化の課題に出会ったときに「裏側がこうだからたぶんこういうことだよね」と想像できるようになる、少し世界の見え方が変わる時間を提供します。

    ブラウザ自動操作技術の深層へ、直接触れて学ぶ WebDriver と Chrome DevTools Protocol
  • PHPでブラウザ自動化 - Qiita

    Windowsでの説明になります 前置 私がさくっとブラウザ自動化したいがためにまとめた記事です。 しっかり実装したい方向けではありませぬ。 簡単に説明 Selenium WebDriver ブラウザを操作するのに必要。 ブラウザごとにドライバが用意されている。 (記事ではChrome用のChromeDriver) ドライバに対して、HTTPリクエストすると、ドライバはいい感じにブラウザを動かしてくれる。 php-webdriver WebDriverを動かすためのライブラリ。 WebDriverにHTTPリクエストするのも手間なので、 ライブラリにやってもらうのです。 でも、PHPは公式にないので、Facebookさんが作ってくれたようです。 今回はそれを使います。 Selenium Standalone Server ドライバ、ライブラリ、ブラウザの相性が悪いときに使う。 php-

    PHPでブラウザ自動化 - Qiita
  • reCatnap: セレニウムの基本型

    PHP、セレニウムを使ってみる」で作った「makeChrom()」でドライバを起動させる。 入力待ち状態にする(プログラムを終了させない) たぶん、ムリ(※エラーを出せば待ち状態のままになる) 単純に確認したいだけなら、適当に「sleep()」とかいれてあげれば、すぐには終了されない。 formを実行 // URLを開く $driver->get($url); // formタグの「id=〇〇〇」で探す $wrapForm = $driver->findElement(WebDriverBy::id(〇〇〇)); // formタグの中にある「name=〇〇〇」を探して「□□□」を入力する $wrapForm->findElement(WebDriverBy::name(〇〇〇))->sendKeys(□□□); // formタグにある検索ボックスを送信:formなのでsubmit $

  • Selenium webdriverメソッド~PHP~ - Qiita

    SeleniumをPHPで書くときのメソッドのまとめがほしいなと思ったので よく使うであろう基的なメソッドをまとめました。 メソッド一覧 指定したURLへ遷移

    Selenium webdriverメソッド~PHP~ - Qiita
  • seleniumを使ってPHPでChromeの自動操作をする - Qiita

    テストとかどうでも良いから自動操作がしたい! seleniumはphpUnitなどと組み合わせてテストを自動実行するために使われるのだが私はただブラウザの自動実行を体験したいだけ。 なので今回は『とりあえず自動操作を体感』したいという人に向けて発信する。 seleniumとは これをご覧になるのが一番。コマンドを叩くだけで勝手にブラウザが起動して入力・検索を行っている。記事ではここまでを目指す。 環境構築 今回はPHPで自動操作のプログラムを書き、Chromeで自動操作を実行する。 公式ではphpでSeleniumを動かすドライバーがないため、Facebookの中の人が作ったSeleniumのPHP版、facebook-webdriverを使用する。(SNSのFacebookサービスとは無関係です) 作業ディレクトリの作成 とりあえず実行したいんじゃ、という方のためなので以後はこのフ

    seleniumを使ってPHPでChromeの自動操作をする - Qiita
  • shellnium - ShellスクリプトでWebブラウザを自動操作

    Seleniumを使うとWebブラウザをプログラミングコードから自動操作できます。よくWebブラウザのテストなどで使われていますが、スクレイピングや業務システムの自動操作でも利用されます。 今回紹介するshellniumは、そんなSeleniumをシェルスクリプトで操作するソフトウェアです。 shellniumの使い方 実際のコードです。 #!/usr/bin/env bash source ./selenium.sh main() { # Googleのトップページに遷移 navigate_to 'https://google.co.jp' # 検索ボックスの要素を取得 local searchBox=$(find_element 'name' 'q') # 検索ボックスに入力&検索実行 send_keys $searchBox "タピオカ\n" } main ちゃんとWebブラウザを自

    shellnium - ShellスクリプトでWebブラウザを自動操作
    gayou
    gayou 2020/07/27
    ダジャレのようで、ダジャレではなかった。便利そう。
  • python selenium chromedriver beautifulsoup - Qiita

    import time from selenium import webdriver import chromedriver_binary driver = webdriver.Chrome() driver.get('https://xxx') time.sleep(2) # 2秒のウェイト driver.close() driver.quit() from bs4 import BeautifulSoup import time from selenium import webdriver import chromedriver_binary from selenium.webdriver.chrome.options import Options option = Options() option.add_argument('--headless') driver = webdriv

    python selenium chromedriver beautifulsoup - Qiita
  • JUnitでテストケースの結果がFailでも実行を続けたいときは、ErrorCollectorを使う - テストウフ

    私は普段SeleniumでGUIの自動テストをもにょもにょと書いているのですが、assertThatを使っていると期待値と実際の値が異なったときに、そこでテストケースの実行が止まってしまうので困るときがあります。 たとえば画面上の項目が20くらいあって、全部を期待結果と比較したいとき。期待値と異なる部分は全部一度に知りたいのですが、assertThatを使うとFailした時点で止まってしまい、その先にあるFailが見つけられません。 そんなときは、ErrorCollectorを使いましょう。 ErrorCollector org.junit.rules.ErrorCollectorクラスを使うと、アサーションが失敗した場合でもテストの実行を継続することができます。 サンプルを用意しました。 package Example.example; import static org.hamcres

    JUnitでテストケースの結果がFailでも実行を続けたいときは、ErrorCollectorを使う - テストウフ
    gayou
    gayou 2019/12/13
    これ使った。
  • Webブラウザ自動化ツール「Selenium IDE」の今までとこれから| Qbook

    Webシステムのテストを自動化する上でこれまでよく使われてきたツールである「Selenium IDE」。 現時点(2021年1月)では、バージョン3.17.0となっており、Chrome、Firefoxのクロスブラウザで対応できるようになっています。 稿ではSelenium IDEのこれまでの歴史を簡単に振り返り、また今回リリースされたバージョンのファーストインプレッションをご紹介します。 もくじ Selenium IDEとは Selenium IDEのサポート終了と再始動 Selenium IDEを使ってみる Selenium IDEのコマンド その他の機能 まとめ Selenium IDEは、Webブラウザ上で動作するキャプチャ・リプレイツールです。キャプチャ・リプレイとは、ユーザーの操作を記録し、それをそのまま実行できるようにする、という意味

    Webブラウザ自動化ツール「Selenium IDE」の今までとこれから| Qbook
  • webdriverで子画面を扱う - seleniumer’s diary

    テストあるあるなのが子画面のオペレーション。ボタンからjavascriptで起動する子画面でデータをあれして、親画面も更新してあれして、みたいな。 webdriverではメソッドswichTo()とgetWindowHandle()、またはgetWindowHandlesを使って制御します。String currentWindow = driver.getWindowHandle(); for (String popUpHandle : Driver.getWindowHandles()) {         if(popUpHandle.equalsIgnoreCase(currentWindow)) continue; Driver.switchTo().window(popUpHandle); String sTitle = Driver.getTitle();あらかじめデフォルトの

    webdriverで子画面を扱う - seleniumer’s diary
  • WebDriverでBasic認証を突破する - Qiita

    WebDriverでのBasic認証突破 Basic認証がかかっているページの対処方法について書きます。 テスト用のサイトはBasic認証外すっていう対応もいいと思います。 でも、環境ごとに差分作りたくなかったり、Basic認証通ること自体をテストしたいこともあるかも。 とはいえ、GUI自動テストは万能ってわけでもないので、自動テストする観点を分けるっていう諦めもときには大事だと思っています。 通常は、以下の通りでよいはず WebDriverWait wait = new WebDriverWait(driver, 10); Alert alert = wait.until(ExpectedConditions.alertIsPresent()); alert.authenticateUsing(new UserAndPassword(username, password)); しかし、現

    WebDriverでBasic認証を突破する - Qiita
  • Seleniumの弱点を補うブラウザ自動テスト用フレームワーク「Selenide」とは

    Webアプリケーションのテスト自動化に特化したJava用のフレームワーク「Selenide」は、人気のある「Selenium」と比べて大きなアドバンテージがある。使い方やコードを交えて解説しよう。 ブラウザテストに特化したフレームワーク「Selenide」 Webアプリケーションのブラウザテストを自動化するツールとして、「Selenium」がよく知られています。@ITの読者でも使っている方は多いのではないでしょうか。人気のあるSeleniumですが、実際に使っていると不満に思う点もあると思います。SeleniumはWebブラウザの操作を自動化するためのツールであり、Webアプリケーションのテストに特化したツールではありません。そのため、Seleniumを使ったテストコードには、冗長になってしまう部分がありました。 特に、非同期処理についてSeleniumは苦手としており、「Selenium

    Seleniumの弱点を補うブラウザ自動テスト用フレームワーク「Selenide」とは
    gayou
    gayou 2018/03/07
    Java専用
  • PHPでブラウザテストの自動化! Facebookの作ったツール「php-webdriver」で人生がときめく - Connehito開発者ブログ(サンプルコード付き)

    こんにちは、コネヒトでPHP書いたりしています金城(@o0h_)ともうします。烏龍茶が好きです。 (テスト自動化おじさんの弊社内におけるイメージ) 突然ですが! 皆さんも、自分の実装についていまいち自信が持てない時はございませぬか。 「あの実装・・頭をよぎる不安・・眠れない夜・・・・」そんな気分で毎日を過ごしていませんか? 「誰かに許して欲しい、安心をください」。 そんな時はテストを書きますよね。緑色が好きな人、この界隈には私だけではないはずです! ただ、どうしても検査しづらいな〜どうやって試せば良いかな〜と悩ましい時もあるのではないかと。 「エンドユーザーが直接触るのってブラウザでしょ、だったら実際にブラウザを使った操作が滞りなく可能なら問題ないよね・・」とか、考えたことありませんか? ここで闇堕ちしたプログラマは、ぽちぽちとhttp://localhostを開いたGoogle Chro

    PHPでブラウザテストの自動化! Facebookの作ったツール「php-webdriver」で人生がときめく - Connehito開発者ブログ(サンプルコード付き)
  • SeleniumCodeBuilder - Selenium用に操作を記録&テストコード出力

    MOONGIFTはオープンソース・ソフトウェアを紹介するブログです。2021年07月16日で更新停止しました Selenium IDEが最新のFirefoxで動かなくなり、多くの代替ソフトウェアが登場し始めています。単純に操作を再現するものはあるのですが、テストコードを出力するものはまだ多くありません。 そこで使ってみたいのがSeleniumCodeBuilderです。操作した内容をRubyまたはPython用のテストコードとして出力できます。 SeleniumCodeBuilderの使い方 操作した記録です。一つ一つ区切られた形で出力されます。 プラットフォームを指定してテストコードを出力できます。 クリックやイベントの追加もできます。 ヘルプです。 SeleniumCodeBuilderでは複数のテストケースを管理できません。一旦保存しておいて、ファイルを開いて呼び出す形になります。し

    SeleniumCodeBuilder - Selenium用に操作を記録&テストコード出力
  • iPhone/Android含むブラウザ自動テストの最終兵器Selenium WebDriverとは

    Webアプリケーションのテスト自動化をサポートするツール「Selenium WebDriver」は2011年にリリースされました。 Selenium WebDriverは広範なWebブラウザのサポートを行っていた「Selenium1(Selenium RC)」と高速軽量で汎用的なWebブラウザエミュレータの機能を持つ「WebDriver」を統合したものです。 稿では、Selenium WebDriverを簡単に試してみたい方や自動テストの実施を検討している方のために、前後編に分けて紹介します。Selenium WebDriverの特徴を整理するとともに、Selenium WebDriverを利用したWebアプリケーションに対する簡単な自動テストの実装、実施手法について解説します。 稿で使用する用語の説明 Selenium WebDriver Selenium WebDriverはSel

    iPhone/Android含むブラウザ自動テストの最終兵器Selenium WebDriverとは
  • Getting Started with Headless Chrome  |  Blog  |  Chrome for Developers

    TL;DR Headless Chrome is shipping in Chrome 59. It's a way to run the Chrome browser in a headless environment. Essentially, running Chrome without chrome! It brings all modern web platform features provided by Chromium and the Blink rendering engine to the command line. Why is that useful? A headless browser is a great tool for automated testing and server environments where you don't need a visi

    gayou
    gayou 2017/05/11
    便利そう
  • Selenium WebDriver + python で E2Eテスト自動化

    Editor's Notesそれでは、Selenium WebDriverとPythonでE2Eテスト自動化のお話しをさせていただきます。小池です。よろしくお願いします。まず簡単に自己紹介ですが、私自身はBtoB向けのWebアプリケーションの開発を行っていました。 直近1年ほどは営業管理システムのJUST.SFAの品質保証担当になり、その一環としてテスト自動化の検討から実施までを行っています。 ・ JUST.SFAですが、不具合によってはユーザーの業務が止まってしまうこともあるので、品質は非常に重要です。 また、様々な機能が使えてかつ用途に合わせたカスタマイズができる、という商品性のため、設定できる組み合わせが膨大となっています。 さらに、昨年7月にリリースした商品であることもあり、今後機能追加をどんどん行うため、リリース頻度を上げたいという要件もあります。 ・ そのため、テストの自動化が

    Selenium WebDriver + python で E2Eテスト自動化
  • Seleniumのモバイルテストは今どうなっているのか | MagicPod Tech Blog | MagicPod: AIテスト自動化プラットフォーム

    スマートフォンの普及に伴い、インターネットの利用はデスクトップからモバイルにシフトしており、最近の調査ではスマートフォンからのアクセスがパソコンを上回るウェブサイトも増えています。 Seleniumでもこのモバイルへの対応が重要なテーマになっており、 Seleniumプロジェクトやその周辺プロジェクトにおいて、既に様々なツールがリリースされています。 今日は、このSeleniumによるモバイルテストの現状についてご紹介します。 iPhoneDriverとAndroidDriver Seleniumプロジェクトのモバイルへの対応はかなり早くから始まっており、2009年2月にはiOS(iPhoneおよびiPad)のブラウザテストを行うiPhoneDriver※1が 、2010年6月にはAndroidのブラウザテストを行うAndroidDriverがリリースされています※2。(ちなみにSelen

    Seleniumのモバイルテストは今どうなっているのか | MagicPod Tech Blog | MagicPod: AIテスト自動化プラットフォーム