2016-12-21 2 views
1

私たちは、迷惑メールマシンでBehatテストを実行しようとしていますが、常に問題が発生しています。だから、最初の問題は、クッキーとあったSylius + Vagrant + Behat not working

これは、我々がhttps://github.com/vranac/vagrant-sylius-setup

をベイグラントマシン使用しているが、我々はそれを解決したが、今ここで

を失敗している@javascriptあるすべてのシナリオでは、スクリーンショットでは例enter image description here

です私たちは間違った後にルートが見つからないと言っていますか?

任意のアイデアこれを解決する方法は?

+0

失敗した手順の中でopen()メソッドを使用していますか? URLで特定のページにあるのかどうかを確認しているようですが、別のページが見つかるようです。 – lauda

+0

私はまったく同じ問題に直面しています。私はこれがどのような方法で迷惑メールVMに関連していたのか分かっていませんでした(しかし、はい、私の問題はVMにもあります)。あなたはこれを解決する運があったのですか?もしそうなら、あなたは答えを分けてくれますか? – mkilmanas

答えて

0

私はこの特定の問題を直面して解決しました。

ChromeWebdriverのバージョン(2.29)がGoogle Chromeバージョン(59.0)と互換性がないか、またはCookieの設定に関するバグがあることが問題でした(ChangelogはCookieに関するいくつかの作業について言及しています)。

現時点での私の組み合わせは、ChromeDriver 2.30 + Google Chrome 59.0です。これらのバージョンを確認してください。

私が変更しなければならなかったもう一つのことは、セッションハンドラがmocksess(イオン)の代わりに適切なセッションを使用することでした。

framework: 
    test: ~ 
    session: 
     handler_id: session.handler.native_file 
     save_path: '/tmp/php-sessions' 

チェックするさらに別の事セッションが任意の権限の問題なしに読み出し/書き込み/作成された場合です。app/config/config_test.ymlで私はこのようなframework>sessionセクションを変更しました。私はvagrantユーザーでセッションを実行していたので、セッションファイルを所有者として作成したが、Selenium/Chromeを経由してWebサーバーに戻ったときに、www-dataユーザーと権限の制限により失敗しました。回避策として、私は今www-dataユーザーの下でも動作しています:sudo -E -u www-data bin/behat ...。キャッシュについても同様の問題が発生する可能性があります。

https://github.com/Sylius/Sylius/blob/79a5285/src/Sylius/Bundle/CoreBundle/Application/Kernel.php#L162-L164を参照してください)(ホストとゲストの間で)共有ディレクトリの場合、パフォーマンスの向上ですが、また、厳格な権限チェックを暗示している、ベイグラントのために特別にSylius力キャッシュ/ /dev/shm/syliusに配置するディレクトリを記録しているようです