0

Wir untersuchen die Test Clouds für unsere Android- und IOS-Apps. Ich habe ein Test-Snippet erstellt, das die Android-App installiert und startet. Und dann nimmt der Screenshot. Ich verwende Visual Studio, um die Tests zu schreiben. Und Visual Studio-Emulator, um die Android-App und Xamarin-Test auszuführen. Xamarin Test kann die App installieren, löst dann aber den Fehler aus. Code und Fehler können unten gefunden werden.Testautomatisierung kann nicht mit Xamarin.UITest von Visual Studio auf meinem lokalen Emulator ausgeführt werden

Andere Beobachtungen:

  1. Ich bin mit Test-Account für meine Untersuchungen, die für 30 Tage frei ist.
  2. Aber ich sehe meinen Computer nicht in der Verbindung hinzugefügt: https://store.xamarin.com/account/my/subscription/computers. Während ich mich von Visual Studio in meinem PC angemeldet habe.
  3. Aus diesem Grund kann ich die Lizenzdatei auch nicht kopieren. Kann das der Grund sein? Wenn ja, was ist der beste Weg, dies zu untersuchen, ohne ein vollständiges Abonnement zu erhalten?

Code:

[TestFixture] 
public class Tests 
{ 
     AndroidApp app; 
     [SetUp] 
     public void BeforeEachTest() 
     { 
      // TODO: If the Android app being tested is included in the solution then open 
      // the Unit Tests window, right click Test Apps, select Add App Project 
      // and select the app projects that should be tested. 
      app = ConfigureApp 
       .Android 
       // TODO: Update this path to point to your Android app and uncomment the 
       // code if the app is not included in the solution. 
       .ApkFile(@"C:\MobileOnly\SampleProjects\AndroidSampleProjects\InfraTest\app\build\outputs\apk\app-debug.apk") 
       // .InstalledApp("com.microsoft.mobile.infratest") 
       .StartApp(Xamarin.UITest.Configuration.AppDataMode.Clear); 

     } 

     [Test] 
     public void AppLaunches() 
     { 
      app.Screenshot("First screen."); 
     } 
    } 

Fehler:

Test Name: AppLaunches 
Test FullName: XamarinUITest.Tests.AppLaunches 
Test Source: : line 0 
Test Outcome: Failed 
Test Duration: 0:00:11.233 

Result StackTrace: 
at Xamarin.UITest.Shared.Processes.ProcessRunner.Run(String path, String arguments) 
at Xamarin.UITest.Shared.Android.Commands.CommandAdbInstallPackage.Execute(IProcessRunner processRunner, IAndroidSdkTools androidSdkTools) 
at Xamarin.UITest.Shared.Android.LocalAndroidAppLifeCycle.InstallApps(ApkFile[] apkFiles) 
at Xamarin.UITest.Shared.Android.LocalAndroidAppLifeCycle.EnsureInstalled(ApkFile appApkFile, ApkFile testServerApkFile) 
at Xamarin.UITest.Android.AndroidApp..ctor(IAndroidAppConfiguration appConfiguration) 
at Xamarin.UITest.Configuration.AndroidAppConfigurator.StartApp(AppDataMode appDataMode) 
at XamarinUITest.Tests.BeforeEachTest() in C:\MobileOnly\SampleProjects\AndroidSampleProjects\XamarinUITest\XamarinUITest\Tests.cs:line 22 
Result Message: 
SetUp : System.Exception : Failed to execute: C:\NugetCache\androidsdk.23.0.4\platform-tools\adb.exe -s 169.254.138.177:5555 install "C:\Users\gunjansa\AppData\Local\Temp\uitest\a-6EAAB1A4CD21F05DB755FBC781EAD620D4ADACBC\final-D9BA1DA5963F9B7853DABC6DEC56BFF2F4740ADE.apk" - exit code: -1073740940 
WARNING: linker: libdvm.so has text relocations. This is wasting memory and is a security risk. Please fix. 

Pkg: /data/local/tmp/final-D9BA1DA5963F9B7853DABC6DEC56BFF2F4740ADE.apk

Antwort

0

Aktualisieren der Xamarin.UITest NuGet und versuchen

public void BeforeEachTest() 
     { 
      // TODO: If the Android app being tested is included in the solution then open 
      // the Unit Tests window, right click Test Apps, select Add App Project 
      // and select the app projects that should be tested. 
      app = ConfigureApp 
       .Android 
       .StartApp(); 
} 
0

Ich würde unter Aktionen tun

  1. Ihre UITest Projektpakete
  2. wiederherstellen Stellen Sie sicher, dass Sie jede App mit dem Paket-ID namens nicht sehen, obwohl die App vollständig vom Gerät deinstalliert wird. Häufig ist dies der Fall, bei dem uitests die vorhandene Version der App deinstalliert und die Ordner zurücklässt, die dieses Problem verursachen.

Ich hoffe, dies löst Ihr Problem.