0

これは基本的な質問であることは知っていますが、解決できません。

サンプルのセレニティ プロジェクト (mvn archetype serenity-junit-screenplay-archetype) ( https://www.youtube.com/watch?v=o-6CcDFn5Ug ) をダウンロードして、Google で「BDD in Action」を検索しました。

ビルドのコンパイルに Gradle を使用しています。

build.gradle

repositories {
    jcenter()
    mavenLocal()
}

buildscript {
    repositories {
        mavenLocal()
        jcenter()
    }
    dependencies {
        classpath("net.serenity-bdd:serenity-gradle-plugin:1.1.36")
    }
}

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'idea'
apply plugin: 'net.serenity-bdd.aggregator'

dependencies {
    compile 'net.serenity-bdd:serenity-core:1.1.36'
    compile 'net.serenity-bdd:serenity-junit:1.1.36'
    compile 'net.serenity-bdd:serenity-screenplay:1.1.36'
    compile 'net.serenity-bdd:serenity-screenplay-webdriver:1.1.36'
    testCompile('junit:junit:4.12')
    compile('org.assertj:assertj-core:1.7.0')
    compile('com.googlecode.lambdaj:lambdaj:2.3.3')
}
gradle.startParameter.continueOnFailure = true

「SearchByKeywordStory」を次のように更新して、IEDriver と ChromeDriver の「webdriver.driver」プロパティを含めました。

@RunWith(SerenityRunner.class)
public class SearchByKeywordStory {

    Actor anna = Actor.named("Anna");

    @Managed(uniqueSession = true, clearCookies=BeforeEachTest)
    public WebDriver herBrowser;

    @Steps
    OpenTheApplication openTheApplication;

    @Before
    public void annaCanBrowseTheWeb() {
        System.setProperty("webdriver.ie.driver", "../resources/IEDriverServer.exe");
        System.setProperty("webdriver.chrome.driver", "../resources/chromedriver.exe");
        anna.can(BrowseTheWeb.with(herBrowser));
    }

    @Test
    public void search_results_should_show_the_search_term_in_the_title() {
        givenThat(anna).wasAbleTo(openTheApplication);

        when(anna).attemptsTo(Search.forTheTerm("BDD In Action"));

        then(anna).should(eventually(seeThat(TheWebPage.title(), containsString("BDD In Action"))));

    }
}

IntelliJ を使用してシナリオを実行しています。Chromedriver は問題なく動作し、テストはパスします。しかし、IEDriver が機能せず、テストを実行すると、次のエラーが表示されます。

SLF4J: クラス "org.slf4j.impl.StaticLoggerBinder" のロードに失敗しました。SLF4J: 無操作 (NOP) ロガー実装のデフォルト

InternetExplorerDriver サーバー (32 ビット) 2.48.0.0 を開始ポート 35996 でリッスン

net.thucydides.core.webdriver.UnsupportedDriverException: クラス org.openqa.selenium.ie.InternetExplorerDriver をインスタンス化できませんでした

net.thucydides.core.webdriver.UnsupportedDriverException: クラス org.openqa.selenium.ie.InternetExplorerDriver をインスタンス化できませんでした

at org.ao.automation.tasks.OpenTheApplication.performAs(OpenTheApplication.java:15)
at org.ao.automation.features.search.SearchByKeywordStory.search_results_should_show_the_search_term_in_the_title(SearchByKeywordStory.java:43)

プロセスは終了コード -1 で終了しました

IE のすべての設定を確認しました (保護された設定、ズーム レベル、HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BFCACHE のレジストリ値)

IE ブラウザが呼び出されるのがわかりますが (Internet Explorer を起動しています... 何とか)、その後すぐに失敗します。

InternetExplorerの呼び出しに問題がない数百のテストを含む他のいくつかのSelenium mavenプロジェクトがあるため、IEDriverが機能することは確かです。

ここで何か間違ったことをしている場合はお知らせください。

4

1 に答える 1

0

IE Driver のバージョンを 2.53.0 にアップグレードしてみましたか?

于 2016-06-24T00:18:12.133 に答える