QR Send

スマホとPCのChrome間で、URLやテキストをQRコード1回のペアリングで送り合える自作Chrome拡張。アカウント不要・無料。

使ってみる →

Selenium・自動化

Selenium・自動化

Seleniumで壊れにくいロケータを設計する:絶対XPathをやめて変更に強い要素指定に

SeleniumのロケータをDevToolsコピペの絶対XPathやハッシュ化class名に頼らず、data-*属性・テキスト関係・複数条件・定数集約で変更に強く設計する方法をRubyで解説します。
Selenium・自動化

Seleniumでファイルのダウンロード完了を確実に待つ:.crdownloadとサイズ安定チェックで検知する

Seleniumでファイルダウンロードのボタンを押した直後にファイルを読むと中身が壊れている問題を防ぐため、.crdownloadの消滅とサイズ安定チェックでダウンロード完了を確実に検知するRubyの実装を解説します。
Selenium・自動化

SeleniumでAjax(非同期読み込み)の完了を待つ:ローディングが消えるまで確実に待機する(Ruby)

Seleniumでsleepに頼らずAjax(非同期読み込み)の完了を待つ方法を解説。ローディングスピナーの消失、jQuery.activeの監視、フレームワーク非依存の要素数安定待ちまで、Rubyのコード例で紹介します。
Selenium・自動化

SeleniumでJSダイアログとBasic認証を扱う:alert/confirm/promptとブラウザ認証(Ruby)

SeleniumでJSダイアログ(alert/confirm/prompt)をswitch_to.alertで安全に処理し、Basic認証はURL埋め込みで突破する方法をRubyコード付きで解説します。
Selenium・自動化

Seleniumでファイルアップロードを自動化する:input[type=file]にsend_keysでパスを渡す(Ruby)

Seleniumでinput[type=file]にsend_keysで絶対パスを渡し、OSのファイル選択ダイアログを介さずにファイルアップロードを自動化するRubyの実装を解説します。
Selenium・自動化

Seleniumでselect・日付ピッカーを確実に操作する:Selectクラスとカレンダー操作、選択後の検証

Seleniumのselect要素はSupport::Selectで、JS描画のカスタムドロップダウンや日付ピッカーはクリック操作で、選択後は値を検証する、という確実な操作方法をRubyで解説します。
Selenium・自動化

RSpec+SeleniumでE2Eテストを書く最小構成(Ruby)

RSpec+SeleniumでE2Eテストを書くための最小構成をRubyコード付きで解説。Gemfile・spec_helper・サンプルログインフォームのテスト・失敗時スクショ・CI対応まで一気通貫で紹介します。
Selenium・自動化

Selenium(Ruby)からPlaywright(TypeScript)へ移行して変わった考え方

Selenium(Ruby)からPlaywright(TypeScript)へ移行する中で変わった「待ち方」「ロケータの扱い方」「ブラウザの分離の仕方」という3つの発想の転換と、それでもSeleniumが有利な場面を整理します。
Selenium・自動化

SeleniumのRubyスクレイパーをGitHub Actionsで定期実行する

ローカルPCを常時起動してcronでSeleniumバッチを回すのは意外と面倒です。GitHub Actionsのschedule(cron)とヘッドレスChromeで、無料枠内に収まる定期実行環境を組む方法を解説します。
Selenium・自動化

Seleniumの明示的待機を正しく設計する:sleepをやめてWebDriverWaitと自作条件で「取れるまで待つ」(Ruby)

Seleniumで固定sleepに頼らず、WebDriverWaitとuntilによる明示的待機、標準条件で足りない場合の自作待機条件、タイムアウト時に何を待っていたか分かるメッセージ設計まで、Rubyのコード例で解説します。