タグ

ブックマーク / www.katsulog.tech (5)

  • ruby + selenium webdriverチュートリアル | katsulog

    エントリーは、Selenium/Appium Advent Calendar 2019 25日目エントリーです。 いい感じのチュートリアルがないので自分で作ります 近頃、自動化とかRPA系のイベントで登壇とかしているせいか、私への弟子入り志願者が増えています。 私としてはとても嬉しいですし、育ってくれたら仕事を手伝っていただきたいという気持ちですが、 プログラミングの学習サービスは数あれど、seleniumに関するオンライン学習となるとなかなか良いものがありません。 毎回1から教えていると時間がいくらあっても足りません。 そもそも業務効率化の事業をしているのに、全然効率的ではない。 ある程度体系化したものを自分で作って、最初はそのチュートリアルをやってみてもらうということにしました。 この記事は私のnoteでも公開します。 https://note.mu/katsuyads/n/nb83

    ruby + selenium webdriverチュートリアル | katsulog
  • 【効率化】VS CODEでよく使う文字列をショートカットキーで登録 | katsulog

    開発エディタAtom → VS CODEを使ってみてる 2年くらいAtomを使っていましたが、めっちゃ重くなったり、固まって落ちるということが頻発していました。 また、コマンドラインをエディタ上で使うためのPlatformin IDE TerminalがAtomのバージョンをあげると使えなくなったりと、 バージョンアップ毎にパッケージの更新を待たなければならないなどの事情があって、手動でAtomのロールバックを行わなければならないとか、、、 結構困っていることがありました。 Visual Studio Codeがとにかく良いという噂を聞いた 日々読んでいるフィードの中でVS CODEがとにかくよいという記事を見ました。 ・とにかく軽い。落ちたことなんてない。 ・コマンドラインツールがデフォルトでついている ・日語化もデフォルトでできる こんな内容だったんですね。 もし当ならAtomから

    【効率化】VS CODEでよく使う文字列をショートカットキーで登録 | katsulog
  • chromedriverのheadlessでファイルをダウンロードする | katsulog

    headlessではないGUIでのコード まず通常モードでの実装です。 ダウンロード先のパスを指定するダイアログを表示しないようにして、 ダウンロード先のパスを指定します。 今回はコードと同ディレクトリの tmp フォルダを指定します。 prefs = { :download => { :prompt_for_download => false, :default_directory => File.absolute_path("./tmp") } } d = Selenium::WebDriver.for :chrome, prefs: prefs # この後にダウンロードリンクをクリックするコードを書く

    chromedriverのheadlessでファイルをダウンロードする | katsulog
  • ruby + selenium(RSpecなど)の例外処理には回数を指定すべきです | katsulog

    エラーを捕捉してくれる例外処理(begin,rescue,retry) 自動テストなどでは、対象のアプリの不具合ではなく、コードやマシンなどのクライアント側のエラーが発生した場合のために例外処理を入れると運用がスムーズになります。 これ超便利。「なぜか時々ここでコケるんだよなぁ。。。」っていう場合にエラーを捕捉して、その処理をやり直してくれます。 こんな感じですね。

    ruby + selenium(RSpecなど)の例外処理には回数を指定すべきです | katsulog
  • selenium gridやjenkinsを返さず単体のコードのみで複数のdriverを並列実行 | katsulog

    複数のdriverを一気に立ち上げる 複数のdriverを宣言するのには普通に考えると以下のようになります。 driver1 = Selenium::WebDriver.for :chrome driver2 = Selenium::WebDriver.for :chrome driver3 = Selenium::WebDriver.for :chrome driver4 = Selenium::WebDriver.for :chrome driver5 = Selenium::WebDriver.for :chrome driver6 = Selenium::WebDriver.for :chrome driver7 = Selenium::WebDriver.for :chrome driver8 = Selenium::WebDriver.for :chrome driver9 =

    selenium gridやjenkinsを返さず単体のコードのみで複数のdriverを並列実行 | katsulog
  • 1