0
votes

XAMARIN.FORMS UI Automatisation Test de WaitForElement webview Toujours expansion

mon application xamarin.forms utilise Azure ad B2C pour authentification. Cela fonctionne bien. J'essaie de construire des tests d'automatisation de l'interface utilisateur maintenant et j'ai couru dans mon premier bloqueur. J'ai essayé d'attendre que le Webview vienne à l'écran pour que je puisse entrer l'e-mail et le mot de passe d'un utilisateur de test dans mon script d'automatisation des tests d'interface utilisateur, mais la méthode WaitForElement est toujours de temps sur!

[Test]
public void RegistrationStarts()
{
    app.Screenshot("Welcome screen.");

    app.WaitForElement(c => c.WebView());
    app.Tap(c => c.WebView().Css("input#logonIdentifier"));
    app.EnterText("sample@example.com");

}


0 commentaires

3 Réponses :


0
votes

Y a-t-il une raison pour laquelle vous avez utilisé l'entrée avant l'ID? Si votre identifiant est votre identifiant de tout ce que vous voulez taper, il devrait simplement être xxx

également, si le logonentificateur est la zone de texte dans laquelle vous souhaitez taper, entrer le texte doit être < Pré> xxx


0 commentaires

0
votes

Vous pouvez essayer d'attendre l'élément avec le délai d'attente - temps en miliseconde, deuxième et min.

app.waitforelement (x => x.marked ("AutomationID"), Timeout: Timespan.fromseconds (90));

ou

HTTPS : //docs.microsoft.com/en-us/dotnet/api/xamarin.uitest.iapp.waitforelement? Vue = xamarin-uitest-sdk


0 commentaires

0
votes

Il semble que vous utilisiez systembrowser code> au lieu de webview code>.

Modifiez votre méthode d'acquisition de jeton avec webview. P>

AuthenticationResult authResult = await _pca.AcquireTokenInteractive(B2CConstants.Scopes)
                .WithUseEmbeddedWebView(true)
                .ExecuteAsync();


0 commentaires