6

私たちは JBehave Web を使用して、新しいプロジェクトのセレン テスト スイートを推進しています。JBehave で利用できる Etsy.com の例、特に Java/Spring Maven アーキタイプが私たちのアーキテクチャに適合しているため、非常に気に入っています。

これまでの最大の問題はドキュメンテーションでした。そのため、同様の状況にある他の人から助けが得られることを期待してここに投稿しています。

JBehave Web は「FirefoxWebDriverProvider」クラスのみを提供し、Chrome に対応するクラスを提供していないようです。他の誰かがこの問題に遭遇しましたか? 独自の ChromeDriverProvider を作成しましたか?

また、デフォルトで表示されるブラウザのサイズを変更する必要がありますが、テスト実行のブートストラップ中にそれを行う方法が見つからないようです。

jbehave-maven-plugin と「run-stories-with-annotated-embedder」ゴールを使用する jbehave-web-selenium-java-spring-archetype の Maven アーキタイプを使用しているため、「Annotated」を使用しています。 InjectableEmbedder を拡張するメソッド。

誰かが何らかのガイダンスを提供できる場合は、より多くの例へのポインタであっても、本当に感謝しています.

4

6 に答える 6

12

ウィンドウのサイズを変更する方法

webDriverProvider.get().manage().window().setSize(new Dimension(width, height));

このようなコードは、コードをナビゲートすることで簡単に見つけることができます。Eclipse を使用している場合は、Open DeclarationオプションとQuick Type Hierarchyオプションだけで十分です。

Chrome ドライバーの使用方法

TypeWebDriverProviderまたはを使用できますPropertyWebDriverProvider。例えば:

new TypeWebDriverProvider(ChromeDriver.class);
于 2012-06-20T07:37:03.413 に答える
2

最終的にこのChrome ドライバーを見つけましたが、うまく機能しています。最大化モードで起動するためにブートストラップされるときにパラメーターを受け取ることができ、起動時に拡張機能を追加する機能も公開します。

于 2012-09-08T01:58:56.863 に答える
2

jokkaが言ったことは正しいです、ただの補足:ウィンドウのサイズを変更する前に、私は常にウィンドウを左上隅に置いているので、WebDriverがすべてを「見る」ことができることがわかっています:

driver.get().manage().window().setPosition(new Point(0, 0));

明らかに、driver上記は WebDriverProvider の正常なインスタンスであると想定されています

于 2012-06-20T08:35:26.133 に答える
-1

これを試して:

これは私にとってはうまくいきます。

Capybara.current_session.driver.browser.manage.window.resize_to(1800, 1000)
于 2012-12-11T05:06:56.523 に答える