Talk
自分だけの小さなSelenium「Olenium」を作って始める、ブラウザ自動化技術の理論と実践
E2Eテストの実行にはブラウザの自動化が必要不可欠ですが、アプリケーションコード内で完結するユニットテストやインテグレーションテストとは違って、ブラウザ自動化を利用したテストは登場人物や設定が多いです。そのためテストが実行できるようになっても、正直なところその詳細をいまいち理解しておらず、ブラウザ自動化は私にとって技術というより魔法でした。
今年業務未経験から学習を始めて晴れてWebエンジニアになることができました。職業プログラマとなったことは、Web技術の中核であるブラウザを自分がどう動かしているのかを理解していないことへのコンプレックスを強めると同時に、ブラウザ自動化技術への関心を高めるきっかけとなりました。
「誰かが作ったフレームワークで動くものはできるようになったけど、その先を理解できるようになりたい」
「プログラマとして技術を扱っていく以上、魔法で済ませるのではなく自分で使いこなせるようになりたい」
この発表では普段SeleniumやPlayWrightがいい感じに隠蔽してくれているブラウザ自動化の仕組みを、各仕様のドキュメントとシンプルなcurlコマンド等で読み解いていき、最終的に「Olenium」「OlayWright」というRubyを使ったオレオレ簡易実装につなげることで、その全体像を理解していきます。