共有アプリケーションのiOS側でXamarin UIテストを実行する際にいくつか問題が発生しています。 Android上でテストは問題ありませんが、iOSで実行しようとすると、 System.Exception
と表示されます。Xamarin.iOSのクロスプラットフォームUITestsで問題が発生する
SetUp:System.Exception:このアプリケーションバンドルは、 シミュレータで実行するには有効ではありません。この問題を解決するには、私が上でテストを実行してみてください、あなたのターゲットデバイス はsimulator.Toが することができます物理デバイスuseInstalledApp(「ie.eoin.myapp」)
にインストールされているアプリに対して実行されていることを確認してくださいシミュレータと同様の例外を持つ実デバイス上で実行されます。以下はスタックトレースの開始です。 AppInitializer
クラスの私のstartApp()
方法で
Xamarin.UITest.iOS.iOSAppLauncher.LaunchAppLocal(Xamarin.UITest.Configurati`enter code here`on.IiOSAppConfiguration appConfiguration, Xamarin.UITest.Shared.Http.HttpClient httpClient, System.Boolean clearAppData) [0x0008a] in <b034e37336b84a95a2482a0c5f0be621>:0
at Xamarin.UITest.iOS.iOSAppLauncher.LaunchApp (Xamarin.UITest.Configuration.IiOSAppConfiguration appConfiguration, Xamarin.UITest.Shared.Http.HttpClient httpClient, Xamarin.UITest.TestCloud.TestCloudiOSAppConfiguration testCloudAppConfiguration, Xamarin.UITest.Shared.Http.HttpClient testCloudWsClient, Xamarin.UITest.Shared.Http.HttpClient xtcServicesClient, System.Boolean testCloudUseDeviceAgent) [0x0007a] in <b034e37336b84a95a2482a0c5f0be621>:0
at Xamarin.UITest.iOS.iOSApp..ctor (Xamarin.UITest.Configuration.IiOSAppConfiguration appConfiguration) [0x00302] in <b034e37336b84a95a2482a0c5f0be621>:0
at Xamarin.UITest.Configuration.iOSAppConfigurator.StartApp (Xamarin.UITest.Configuration.AppDataMode appDataMode) [0x00017] in <b034e37336b84a95a2482a0c5f0be621>:0
at Shared.UITest.AppInitializer.StartApp() [0x00036] in /Users/eoinahern/Documents/xamarin_projs/HomeApp.Mobile/Shared/Shared.UITests/AppInitializer.cs:23
at Shared.UITest.Common.SetUp() [0x00002] in /Users/eoinahern/Documents/xamarin_projs/HomeApp.Mobile/Shared/Shared.UITests/Common.cs:17
at Shared.UITests.MapScreensTests.SetUp() [0x00002] in /Users/eoinahern/Documents/xamarin_projs/HomeApp.Mobile/Shared/Shared.UITests/MapScreens/MapScreensTests.cs:16
at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&)
at System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00038] in /private/tmp/source-mono-4.6.0/bockbuild-mono-4.6.0-branch/profiles/mono-mac-xamarin/build-root/mono-x86/mcs/class/corlib/System.Reflection/MonoMethod.cs:305
、パスは、binディレクトリに正しい.app
ファイルを指しています。
public static IApp StartApp()
{
switch (TestEnvironment.Platform)
{
case TestPlatform.Local:
#if __IOS__
platform = Platform.iOS;
return ConfigureApp
.iOS
.AppBundle(GetLocalIOSTestAppPath()) .StartApp(Xamarin.UITest.Configuration.AppDataMode.Clear) as IApp;
#endif
}
なぜテストが実行されないのかわかりません。私は実際のデバイスに変更しようとしました。また、.app
ファイルには、そのアイコンとして停止記号からシンボルのように見えるものがあります。これが何を意味するかわからない。私はそれが次に意味するものをチェックしますが、今は私が困惑しています。どんな助けもありがとうございます。真剣にここにこだわった。
あなたは正しい軌道に乗っているかもしれませんが、逆戻りしているかもしれません: "このアプリケーションバンドルはシミュレータでは実行できません。 .ipaファイルはデバイス用にビルドされ、.appファイルはシミュレータ用にビルドされています。 –