2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

GebAdvent Calendar 2016

Day 8

モバイルとPC用のサイトを両方テストする時のTIPs

Posted at

はじめに

これは Geb Advent Calendar 2016の8日目の記事です。
前日は「Gebでモバイルブラウザのテストをする」でした。

今日は昨日のエントリーの続きで、モバイルとPC用のサイトを両方テストする時の方法書きます。

TIPs

モバイルとPCのサイトを両方テストできるようにしておきたい!

そんな時は、環境変数によって切り替えられるようにしておきましょう。
例えば下記のような感じ。詳しい説明は昨日のエントリーへ。

GebConfig.groovy
// geb.envにchromeを設定すればPCで実行
chrome { new ChromeDriver() }

// geb.envにchromeMobileを設定すればモバイル版で実行
chromeMobile {
        def mobileEmulation = [:]
        mobileEmulation.put("deviceName", "Google Nexus 5")

        def chromeOptions = [:]
        chromeOptions.put("mobileEmulation", mobileEmulation)
        def capabilities = DesiredCapabilities.chrome();
        capabilities.setCapability(ChromeOptions.CAPABILITY, chromeOptions);
        WebDriver driver = new ChromeDriver(capabilities);
}

Gradleとか使っている場合は、こんな感じでそれ用のタスクを切っておくと良いかと思います。

モバイルだけ実行するテストがある!

そんな時はSpockの@IgnoreIfという機能を使いましょう。
これは特定の条件に応じて、テストの実行をスキップできる機能です。

例えばこんな風に使ったりできます。

@IgnoreIf({ System.getProperty("geb.env") && System.getProperty("geb.env").equalsIgnoreCase("chrome")})
def "PC版のchromeの時は無視するテスト"() {
// 略

まとめ

モバイルとPC版のテスト、両方できるよー!

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?