1. ホーム
  2. google-chrome

[解決済み] Casperjs/PhantomJsとSeleniumの比較

2022-04-28 17:57:11

質問

私たちはSeleniumを使って UI をテストしています。最近、私たちのユーザーの大半がChromeを使用していることがわかりました。そこで、PhantomJSとSeleniumの長所と短所を知りたいと思います。

  • テストケースの実行にかかる時間など、パフォーマンスの面で本当に有利なことはありますか?
  • どのような場合にSeleniumよりPhantomJSを選ぶべきですか?

どのように解決するのですか?

両者は異なる問題を攻撃している。PhantomJSはコマンドライン上で完全に動作するので、開発ワークフローの一部として、あるいは継続的インテグレーションサーバーの一部として、スモークテストの最初のレイヤーとして適しています。Seleniumは複数のブラウザをターゲットにしているので、クロスブラウザの一貫性を確保し、異なるオペレーティングシステム間で広範なテストを実施するのに非常に便利です。

Webアプリケーションを様々なWebブラウザで動作させる必要がある場合、PhantomJSだけでUIテストを実行しても、テストカバレッジは最大になりません。しかし、詳細なテストを行う前に PhantomJS を起動し、いくつかの基本的なサニティチェックを行うことは全く問題ありません。ログイン画面が意図せず壊れて機能しない金融アプリケーションのテストの狂気を想像してみてください!

なお、最新のPhantomJSでWebDriverがサポートされたことで、この2つの境界線は若干曖昧になりました。まず PhantomJS を使って素早くテストを実行し、それから (重大なエラーが発生しなければ) Selenium のセットアップで同じテストを徹底的に実行し続けることができるようになりました。