https://code.google.com/p/selenium/wiki/AndroidDriver#Run_the_Testsにあるサンプル テストを Android エミュレーター (Mac) で実行しようとしていますが、テストを実行しようとすると問題が発生します。 .
エミュレーターをセットアップして WebDriver APK をインストールした後、Eclipse で新しい Android アプリケーション プロジェクトを作成し、クラス OneTest.java を作成してコードにコピーしました (org.openqa.selenium.WebDriver もインポートしました。サンプルコード)。次に、2 つの selenium-java-2.33.0 jar をライブラリにインポートしました。また、androidmanifest を次のように更新しました。
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.test"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.example.test.MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<uses-library android:name="android.test.runner" />
</application>
<instrumentation android:name="android.test.InstrumentationTestRunner"
android:targetPackage="com.example.test" />
</manifest>
OneTest.java を Android Junit テストとして実行しようとすると、次のエラーが表示されます。
[2013-07-25 11:53:36 - Test] The library 'selenium-java-2.33.0.jar' contains native libraries that will not run on the device.
[2013-07-25 11:53:36 - Test] The following libraries were found:
[2013-07-25 11:53:36 - Test] - org/openqa/selenium/firefox/amd64/libibushandler.so
[2013-07-25 11:53:36 - Test] - org/openqa/selenium/firefox/amd64/x_ignore_nofocus.so
[2013-07-25 11:53:36 - Test] - org/openqa/selenium/firefox/x86/libibushandler.so
[2013-07-25 11:53:36 - Test] - org/openqa/selenium/firefox/x86/x_ignore_nofocus.so
エラーを無視して再度実行しようとすると、次のように表示されます。
[2013-07-25 11:59:43 - Test] Installing Test.apk...
[2013-07-25 11:59:44 - Test] Installation failed due to invalid APK file!
[2013-07-25 11:59:44 - Test] Please check logcat output for more details.
[2013-07-25 11:59:44 - Test] Launch canceled!
そしてLogCatで:
07-25 10:59:44.188: D/zipro(23141): Zip: EOCD not found, /data/local/tmp/Test.apk is not zip
07-25 10:59:44.188: D/asset(23141): failed to open Zip archive '/data/local/tmp/Test.apk'
07-25 10:59:44.219: W/PackageParser(23141): Unable to read AndroidManifest.xml of /data/local/tmp/Test.apk
07-25 10:59:44.219: W/PackageParser(23141): java.io.FileNotFoundException: AndroidManifest.xml
07-25 10:59:44.219: W/PackageParser(23141): at android.content.res.AssetManager.openXmlAssetNative(Native Method)
07-25 10:59:44.219: W/PackageParser(23141): at android.content.res.AssetManager.openXmlBlockAsset(AssetManager.java:487)
07-25 10:59:44.219: W/PackageParser(23141): at android.content.res.AssetManager.openXmlResourceParser(AssetManager.java:455)
07-25 10:59:44.219: W/PackageParser(23141): at android.content.pm.PackageParser.parsePackageLite(PackageParser.java:733)
07-25 10:59:44.219: W/PackageParser(23141): at com.android.defcontainer.DefaultContainerService$1.getMinimalPackageInfo(DefaultContainerService.java:171)
07-25 10:59:44.219: W/PackageParser(23141): at com.android.internal.app.IMediaContainerService$Stub.onTransact(IMediaContainerService.java:110)
07-25 10:59:44.219: W/PackageParser(23141): at android.os.Binder.execTransact(Binder.java:351)
07-25 10:59:44.219: W/PackageParser(23141): at dalvik.system.NativeStart.run(Native Method)
07-25 10:59:44.219: W/DefContainer(23141): Failed to parse package
私はここで提案を試みました Seleniumでライブラリの問題を解決するにはどうすればよいですか? 代わりに android_webdriver_library.jar を使用しますが、インポート org.openqa.selenium.android.AndroidDriver; でエラーが発生しました。および WebDriver driver = new AndroidDriver(); 最初のものは android.AndroidWebDriver; を使用して解決できます。AndroidDriver() で問題を解決できません。
私はEclipse/Android初心者なので、どんな助けも素晴らしいでしょう:)
編集:追加して少し進みました:
<uses-permission android:name="android.permission.INTERNET" />
マニフェストへの