2011-10-11 8 views
0

IntelliJの私のメインプロジェクトでは、セレンテストを実行できません。私は、The 5 Minute Getting Started Guideのサンプルコードだけを持ち、selenium-server-standalone-2.8.0.jarを使用しているカットダウンプロジェクトを作成しました。Selenium 2.8 UnsatisfiedLinkError IEDriver

私はFirefoxDriverで動作しても問題はありません。私はしかし、IEDriverで実行しようとすると、私は次のような出力が得られます。

"C:\Program Files\Java\jdk1.6.0_26\bin\java" -Didea.launcher.port=7534 "-Didea.launcher.bin.path=C:\Program Files\JetBrains\IntelliJ IDEA 10.0.3\bin" -Dfile.encoding=ISO-8859-1 -classpath "C:\Program Files\Java\jdk1.6.0_26\jre\lib\alt-rt.jar;C:\Program Files\Java\jdk1.6.0_26\jre\lib\alt-string.jar;C:\Program Files\Java\jdk1.6.0_26\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.6.0_26\jre\lib\deploy.jar;C:\Program Files\Java\jdk1.6.0_26\jre\lib\javaws.jar;C:\Program Files\Java\jdk1.6.0_26\jre\lib\jce.jar;C:\Program Files\Java\jdk1.6.0_26\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.6.0_26\jre\lib\management-agent.jar;C:\Program Files\Java\jdk1.6.0_26\jre\lib\plugin.jar;C:\Program Files\Java\jdk1.6.0_26\jre\lib\resources.jar;C:\Program Files\Java\jdk1.6.0_26\jre\lib\rt.jar;C:\Program Files\Java\jdk1.6.0_26\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.6.0_26\jre\lib\ext\localedata.jar;C:\Program Files\Java\jdk1.6.0_26\jre\lib\ext\sunjce_provider.jar;C:\Program Files\Java\jdk1.6.0_26\jre\lib\ext\sunmscapi.jar;C:\Program Files\Java\jdk1.6.0_26\jre\lib\ext\sunpkcs11.jar;C:\development\playground\selenium\out\production\Selenium Playground;C:\Users\rachel.swailes\Downloads\selenium-server-standalone-2.8.0.jar;C:\Program Files\JetBrains\IntelliJ IDEA 10.0.3\lib\idea_rt.jar" com.intellij.rt.execution.application.AppMain Example 
new File(".").getAbsolutePath() = C:\development\playground\selenium\. 
Exception in thread "main" java.lang.ExceptionInInitializerError 
    at org.openqa.selenium.ie.InternetExplorerDriver.setup(InternetExplorerDriver.java:84) 
    at org.openqa.selenium.ie.InternetExplorerDriver.<init>(InternetExplorerDriver.java:50) 
    at Example.main(Example.java:13) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
    at java.lang.reflect.Method.invoke(Method.java:597) 
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:115) 
Caused by: org.openqa.selenium.WebDriverException: java.lang.UnsatisfiedLinkError: Unable to load library 'IEDriver': com.sun.jna.Native.open(Ljava/lang/String;)J 
Build info: version: '2.8.0', revision: '14056', time: '2011-10-06 12:41:26' 
System info: os.name: 'Windows 7', os.arch: 'x86', os.version: '6.1', java.version: '1.6.0_26' 
Driver info: driver.version: InternetExplorerDriver 
    at org.openqa.selenium.ie.InternetExplorerDriverServer.initializeLib(InternetExplorerDriverServer.java:129) 
    at org.openqa.selenium.ie.InternetExplorerDriverServer.<clinit>(InternetExplorerDriverServer.java:38) 
    ... 8 more 
Caused by: java.lang.UnsatisfiedLinkError: Unable to load library 'IEDriver': com.sun.jna.Native.open(Ljava/lang/String;)J 
    at com.sun.jna.NativeLibrary.loadLibrary(NativeLibrary.java:166) 
    at com.sun.jna.NativeLibrary.getInstance(NativeLibrary.java:239) 
    at com.sun.jna.Library$Handler.<init>(Library.java:140) 
    at com.sun.jna.Native.loadLibrary(Native.java:393) 
    at com.sun.jna.Native.loadLibrary(Native.java:378) 
    at org.openqa.selenium.ie.InternetExplorerDriverServer.initializeLib(InternetExplorerDriverServer.java:125) 
    ... 9 more 

Process finished with exit code 1 

は、今私はInternetExplorerDriverServer内部コードをトレースしていると私はIEDriver.dllが一時ディレクトリに現れて見ることができますが、それはできませんなんらかの理由でロードしてください。

私はWindows 7とIE8を実行していますが、「管理者として実行」を使用してIntelliJを読み込んでいますが、今はアイデアがありません。また、このモードでIntelliJが起動するすべてのプロセスに管理者権限があるのか​​、これが赤ちゃんなのかわかりません。

また、IEDriver.dllでDependency Walkerを使用すると、IEShims.dllがリンクされていないと考えられることがわかりますが、この情報をどうすればよいか分かりません。

他に誰かが私に試してみたいことはありますか?

[編集]

私は今XP上でそれを試してみたと私はそれがWindows 7の権限はありません推測するので、私は同じ問題を抱えています。 IntelliJがどのようにファイルをロードするかとは何か関係があります。実行行をコピーしてコマンドラインに貼り付けると実行されますが、IntelliJからは実行されません。

多くのおかげで、多くの掘削後 レイチェル

答えて

0

...

IntelliJの10.0.3は、パスにC:\Program Files\JetBrains\IntelliJ IDEA 10.0.3\bin\..\.\bin;を追加されました。これをコマンドラインに追加すると、アプリケーションは失敗し、削除するとそのアプリケーションは失敗します。

私は10.5 Community Editionで試してみましたが、同じ問題がありましたが、10.5 Ultimate Editionでは問題ありません。私は違いがあるとは思わなかったので、今日までUltimate Editionをアップグレードしなかった。

要するに、答えはIntelliJをアップグレードすることでした。 :)

0

私はIJ-IC 11.1.4と同じ問題を持って、同じ問題 があったが、あなただけの "vm options" この

-Djava.library.path=C:\lib 
のように、このDLLディレクトリを追加する必要があります