使用手势
手势是移动应用中的用户交互的重要组成部分。 点击、swipes 和笔锋允许用户通过多种方式与应用程序进行交互,并以直观直观的方式进行交互。 本指南讨论适用于 Android 和 iOS 的 UITest 的 Api。
UITest 提供大量 Api 来模拟笔势或设备的物理交互。 下面列出了一些 (但不是所有这些 Api) :
- IApp. DoubleTap -执行两次快速点击匹配的视图。
- IApp. DragCoordinates -此方法模拟两个点之间的连续拖动。
- IApp. PinchToZoomIn -此方法将在匹配的视图上执行一项缩小的手势来放大。
- IApp. PinchToZoomOut -此方法将在匹配的视图上执行缩小手势以缩小。
- IApp. ScrollUp / IApp. ScrollDown -执行向下或向下滚动的触摸手势。
- IApp. SwipeLeftToRight / IApp. RightToLeft -它模拟从左到右或从右到左的笔势。
- IApp -此点点击第一个匹配的元素。
- IApp. TouchAndHold -此方法将持续触摸查看。
这些 Api 都采用了 AppQuery 用于查找相关视图的。 如果查询定位了多个视图,则 API 将作用于找到的第一个视图。 例如,以下代码片段将双击:
app.DoubleTap(c=>c.Marked("save_button"))
有关 AppQuery.Marked 工作原理的详细信息,请参阅 Marked 方法。
使用 (而不是 )可以 string 匹配元素 AppQuery 。 这些重载方法将使用字符串作为选择 Marked 器来查找视图。 例如 app.DoubleTap(c=>c.Marked("save_button")) ,可以编写为:
app.DoubleTap("save_button")
备注
由于 iOS 模拟器中的 bug, 在滚动视图(如 或 ) flick / swipe 中 UITableView 不起作用 UIScrollView 。
滚动屏幕以查找视图
UITest 只能与屏幕上显示的视图进行交互。 可以使用 或 以编程 IApp.ScrollUp IApp.ScrollDown 方式将视图滚动到屏幕上。 此方法采用 AppQuery 或 标记的字符串 来引用特定视图。 然后,UITest 将滚动到视图在屏幕上可见。 以下代码片段演示如何向下滚动,直到"保存"按钮可见:
app.ScrollDown("save_button")
IApp.Scroll* 接受第二个可选参数,该参数将描述 UITest 如何模拟滚动。 可能的选择封装在 ScrollStrategy 枚举中:
| 值 | 说明 |
|---|---|
ScrollStrategy.Auto |
这是默认值。 UITest 将在尝试 Programmatically 滚动 Gesture 时使用 或 。 它偏向 Programmatically 于 。 |
ScrollStrategy.Programmatically |
UITest 将尽可能快地滚动屏幕,直到显示视图。 |
ScrollStrategy.Gesture |
UITest 将尝试使用一系列手势来模拟用户滚动屏幕。 |