2 votes

Lire la valeur d'un champ de texte dans le test REPL de Xamarin UI

Je travaille sur l'automatisation de notre cross-platform dans Visual Studio 2013 avec Xamarin. Et j'ai actuellement du mal à lire la valeur d'un champ de texte sur une page. Existe-t-il une méthode qui peut être utilisée pour faire cela ?

Exemple d'attributs d'éléments de REPL :

Id => "app_url",
Label => "ApplicationUrlEntryField",
Text => "https://myurladdress.com",
Class => "android.widget.AutoCompleteTextView",
Enabled => true

Maintenant, j'ai besoin de la valeur Text => https://myurladdress.com

Gracias.

[EDIT]

Résoudre le problème :

app.Query(x => x.Marked("ApplicationUrlEntryField").Invoke("getText")); - obtenir la valeur d'un texte par son id

6voto

Brandon Minnick Points 5950

Vous pouvez utiliser le Text Propriété de app.Query pour récupérer la valeur.

J'aime aussi inclure un contrôle de nullité et un retour. string.Empty si pour une raison quelconque app.Query échoue.

string GetApplicationUrlEntryFieldText()
{
    System.Func<Xamarin.UITest.Queries.AppQuery, Xamarin.UITest.Queries.AppQuery> applicationUrlEntryField = x => x.Marked("ApplicationUrlEntryField");

    app.WaitForElement(applicationUrlEntryField);

    var applicationUrlEntryFieldQuery = app.Query(applicationUrlEntryField);

    return applicationUrlEntryFieldQuery?.FirstOrDefault()?.Text ?? string.Empty;
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X