[英]Xamarin.UITest: How To Verify Placeholder/Hint Text
I am writing a Xamarin.UITest for a cross-platform Xamarin.iOS and Xamarin.Android app. 我正在为跨平台Xamarin.iOS和Xamarin.Android应用程序编写Xamarin.UITest。
In my Xamarin.UITest, how do I verify the following properties: 在我的Xamarin.UITest中,如何验证以下属性:
Hint
property for an EditText
? EditText
的Hint
属性? Placeholder
property for a UITextField
? UITextField
的Placeholder
属性? string GetPlaceholderText(string entryAutomationId)
{
if (app is AndroidApp)
{
return app.Query(x => x.Marked(entryAutomationId)?.Invoke("getHint"))?.FirstOrDefault()?.ToString();
}
return app.Query(x => x.Marked(entryAutomationId)?.Invoke("placeholder"))?.FirstOrDefault()?.ToString();
}
Here is the same code-snippet in a sample app that demostrates how to accomplish this task in a cross-platform Xamarin.UITest: 这是示例应用程序中的相同代码段, 该代码段演示了如何在跨平台Xamarin.UITest中完成此任务:
https://github.com/brminnick/FaceOff/blob/master/UITests/Pages/WelcomePage.cs#L73 https://github.com/brminnick/FaceOff/blob/master/UITests/Pages/WelcomePage.cs#L73
In Xamarin.UITest, to retrieve text from an Android EditText
or a iOS UITextField
, you must use the Invoke
method to access the native Java Android API and native ObjectiveC iOS API . 在Xamarin.UITest中,要从Android
EditText
或iOS UITextField
检索文本,必须使用Invoke
方法访问本机Java Android API和本机ObjectiveC iOS API 。 In our Invoke
statements, we can take advantage of the native methods ( getHint()
on Android, and placeholder
on iOS) to retrieve the string. 在我们的
Invoke
语句中,我们可以利用本机方法(Android上为getHint()
,iOS上为placeholder
)来检索字符串。
All tests were validated via Xamarin Test Cloud . 所有测试均通过Xamarin测试云进行了验证。 The test report is viewable here .
在这里可以查看测试报告。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.