Xamarin.UITest: 如何验证 Placeholder/Hint 文本

Xamarin.UITest: How To Verify Placeholder/Hint Text

我正在为跨平台 Xamarin.iOS 和 Xamarin.Android 应用编写 Xamarin.UITest。

在我的 Xamarin.UITest 中,我如何验证以下属性:

示例代码

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 and native ObjectiveC iOS API。在我们的 Invoke 语句中,我们可以利用本地方法(Android 上的 getHint() 和 iOS 上的 placeholder)来检索字符串。

所有测试都通过 Xamarin Test Cloud. The test report is viewable here 验证。