2017-05-09 8 views
2

MinkでBehatを使用しています。これまではDesiredCapabilitiesをコード内に設定していましたが、これをbehat.ymlから取得して別のプロファイルを使用するように変更したいので、firefox用のプロファイルとchrome用のプロファイルがあります。Minkでbehat.ymlのdesiredCapabilitiesを正しく設定する方法

さて、これは、現時点では私のbehat.ymlです:私は、プロファイルクロームでテストを開始しようとすると

chrome: 
extensions: 
    Behat\MinkExtension: 
    sessions: 
    default: 
     selenium2: 
     wd_host: "http://localhost:4444/wd/hub" 
     capabilities:{"browserName":"chrome","version":"51","platform":"ANY","browserVersion":"51","browser":"chrome","name":"Behat Test","deviceOrientation":"portrait","deviceType":"tablet", "selenium-version":"2.31.0"} 

私はこのエラーを取得する:

[Symfony\Component\Config\Definition\Exception\InvalidConfigurationException]Unrecognized option "selenium-version" under testwork.mink.sessions.default.selenium2.capabilities"              

私は「セレンを削除した場合-version 'は、Selenium2Driver.phpで定義されている既定の機能を使ってジャンプします。

これはどうして起こりますか?結局のところ、Selenium2のデフォルトの機能はセレンのバージョンも使用しています。

+0

チェック:あなたはまた、そこに次の方法でそれを使用しようとするので、

Behat /ミンクでサポートされているすべての機能を見つけることができますこのブログ](http://www.inanzzz.com/index.php/posts/behat)が役立つかどうかを確認してください。多くのbehat.ymlと実際のテストの例があります。例:http://www.inanzzz.com/index.php/post/6djs/running-behat2-tests-with-different-browsers – BentCoder

答えて

1

はい、behat.ymlにカスタム機能を設定するオプションがあります。 extra_capabilitiesと呼ばれるcapabilitiesの配列にキーがあります。そこに設定されたすべての機能は、既知のものと統合されます。 getCapabilitiesNodeの方法でMinkExtension/ServiceContainer/Driver/Selenium2Factory.phpの内部で行われます。 [

capabilities:{"browserName":"chrome","version":"51","platform":"ANY","browserVersion":"51","browser":"chrome","name":"Behat Test","deviceOrientation":"portrait","deviceType":"tablet", "extra_capabilities": {"selenium-version":"2.31.0"}} 

余分なパラメータはまた、セレンサーバーに渡されることを

+0

@I。 Schはこの答えがあなたのために有用だった場合、あなたはそれをupvoteすることができます。 –

関連する問題