我一直在尝试针对使用 Xamarin Forms 创建的 Android 和 iOS 应用程序运行测试记录器。当我单击测试记录器中的控件时,我看不到放置在生成的 C# 文件中的 Id,只有类类型。
我决定从等式中删除测试记录器,并尝试让基本的 UI 测试针对 Xamarin Forms Android 应用程序运行。
我从这里下载了一个演示应用程序:
https://developer.xamarin.com/samples/xamarin-forms/UsingUITest/
它应该有所有的东西来正确处理 UITest,包括 StyleIds 和 MainActivity 中的代码,以将 StyleIds 映射到 ContentDescriptions。
我在 REPL 终端会话中运行 tree 来检查屏幕层次结构,它似乎没有显示应该拥有它们的控件的 id。
>>> tree
[[object CalabashRootView] > PhoneWindow$DecorView]
[ActionBarOverlayLayout] id: "decor_content_parent"
[FrameLayout > ... > Platform_DefaultRenderer] id: "content"
[ButtonRenderer]
[Button] label: "MyButton", text: "Click me"
[LabelRenderer]
[FormsTextView] label: "MyLabel", text: "Hello, Xamarin.Forms!"
[View] id: "navigationBarBackground"
[View] id: "statusBarBackground"
>>>
有任何想法吗?