我正在使用Xamarin开发Visual Studio 2013中cross-platform
应用的自动化。我目前正在努力从页面上的文本字段中读取值。有没有一种方法可以用来做到这一点?
REPL
的元素属性示例:
Id => "app_url",
Label => "ApplicationUrlEntryField",
Text => "https://myurladdress.com",
Class => "android.widget.AutoCompleteTextView",
Enabled => true
现在,我需要Text value => https://myurladdress.com
感谢。
[编辑]
实际解决它:
app.Query(x => x.Marked("ApplicationUrlEntryField").Invoke("getText"));
- 按ID
答案 0 :(得分:6)
您可以使用Text
中的app.Query
属性来检索值。
如果由于某种原因string.Empty
失败,我还想要包含空检查并返回app.Query
。
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;
}