0
我正在爲跨平臺的Xamarin.iOS和Xamarin.Android應用程序編寫Xamarin.UITest。Xamarin.UITest:如何驗證佔位符/提示文本
在我Xamarin.UITest,我如何驗證以下屬性:
- 在Xamarin.Android,我怎麼能確認的
Hint
屬性的EditText
? - 在Xamarin.iOS上,如何驗證
UITextField
的Placeholder
屬性?
我正在爲跨平臺的Xamarin.iOS和Xamarin.Android應用程序編寫Xamarin.UITest。Xamarin.UITest:如何驗證佔位符/提示文本
在我Xamarin.UITest,我如何驗證以下屬性:
Hint
屬性的EditText
?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();
}
這裏是a sample app同一個代碼片段,演示功能如何在跨平臺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
聲明中,我們可以利用本機方法(Android上的getHint()
和iOS上的placeholder
)來檢索字符串。
所有測試均通過Xamarin Test Cloud驗證。測試報告是viewable here。