oishisouプログラマ、ララ・ベル子さん改めArm4さんのゆるふわ奮闘記。この広告は、90日以上更新していないブログに表示しています。php皆さん、こんばんわ。いえば、ベル子じゃなくてアルマさんになったことを、すっかり忘れていました。別に名前など、どっちでもいいのだが。SPAを作ってると、PHPUnitでテストするのには限界がありますというか、テストしたいとこはjsで作ってるとこなんです。Duskというものの存在に辿り着きます。Laravelと思ったのも束の間、私が今作ってるアプリのLaravelのバージョンは5.2。Duskが正式に発表されたのはLaravel5.4から。githubのリポジトリv1.0.0のcomposer.jsonを確認してみた。Laravel5.3に依存しているようだ。"~5.3",github.comなるほどね。いうわけで、さっきの検索でちらほら出てきたSeleniumという、まるでどこかのブラウザーの名前を彷彿とさせるテストツールについて調べてみようと思ったわけです。Seleniumの作者は元Googleの人で、現行バージョンのSeleniumはWebDriverという別のツールを統合して作ったものらしい。WebDriverの作者も元Googleのエンジニアで現Facebookの人だそうです。どうりでネーミングセンスが同じなわけだね!と、ここまでまるでSeleniumという1つの何かのソフトウェアが存在するような口ぶりで話を進めてきたが、実は厳密に言うとSeleniumというソフトウェアは存在しない。私は「なるほど、Seleniumをインストールすればいいんですね」のような気持ちでいた。これがSeleniumを導入したくてググってもドンピシャな答えがなかなか出てこない最大の理由である。要するにSeleniumとは、ブラウザをコードで制御してE2Eテストを実現させるためのツール群の総称、そしてその環境自体(エコシステム)を指す名称ということです。Seleniumテスト環境を作るために導入しないとならないツールがいろいろあって、それぞれのアプリケーションの言語なんかによってもいろいろな構築方法があるのです。そんなこと言われても逆に困ります。私はただ、早くテストがしたいだけなんだ。Duskと同じようにすればええやん。Duskは、facebook/php-webdriverのラッパーツールのようなものっぽい。php-webdriverはWebDriverをPHPで操作するライブラリだそうな。Duskの場合は、スタンドアロンのChromeDriverをサーバを立てずに直接操作しているようなんですが、私は普通に一般的っぽいselenium-server-standaloneを立ち上げて、それにリクエストを投げて中継してもらってWebDriverを起動するという方法で構築してみることにしました。難しくなってきて涙目の人は下のリンクが分かりやすいので、そこで勉強してきてから戻ってきてください。app.codegrid.netこれらの環境を整えたら、あとはもうLaravelのテスト書くところにfacebook/php-webdriverのクラスを読み込んでテストコードを書くだけ。何も難しいことはありません。研究中なので、何か認識間違いなんかもあるかもしれませんが、また分かってきたことがあったらブログにしたためようと思うよ★楽しみに待っててね。↓導入の具体的な手順はQiitaにまとめました。qiita.comこれを今度、社内で説明会するんだけど、うまいこと説明できるかなー。ブログにまとめてもややこしーなー。20:54Laravel5.2だってPHPUnit使ってE2EテストしたいんだYOTweet広告を非表示にする関連記事2019-04-01PHPでメール着弾時、メール本文をパースしDBへ格納する(2)〜メールパース編〜2年前に、私はこんなことを言っていた。おしゃれ...2018-03-19youtubeのソースに埋め込まれてるogpタグを確認する方法youtubeの仕様が変わって、UserAgentを見てogpタグの出力を制御...2017-11-30Laravelでカスタムフォーム使ってViewを綺麗に保とうずどうも。お久しぶり、あなたのベル子です。ヶ月)プログラマ、ララ・ベル子さん改めArm4さんのゆるふわ奮闘記。DesignをVueコンポーネント設計に適用するために見るやつ月別アーカイブリンク中の人やってる会社の公式TwitterQiita前のブログgithubはてなブログをはじめよう!arm4さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。