我正在为跨平台的Xamarin.iOS和Xamarin.Android应用程序编写一个Xamarin.iOS。
在我的Xamarin.UITest中,如何验证以下属性:
EditText的Hint属性?UITextField的Placeholder属性发布于 2016-12-28 02:41:32
样本码
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();
}示例应用程序
下面是示例应用程序中相同的代码片段,用于演示如何在跨平台Xamarin.UITest中完成此任务:
https://github.com/brminnick/FaceOff/blob/master/UITests/Pages/WelcomePage.cs#L73
解释
在Xamarin.UITest中,要从Android EditText或iOS UITextField检索文本,必须使用Invoke方法访问本机Java Android API和本机ObjectiveC iOS API。在我们的Invoke语句中,我们可以利用本机方法(安卓上的getHint(),iOS上的placeholder )来检索字符串。
所有测试均通过Xamarin试验云进行验证。测试报告是在这里可以看到。
https://stackoverflow.com/questions/41354663
复制相似问题