xcode - 从 Xcode UITests 的 Menu Token 字段中选择文本

标签 xcode xcode-ui-testing

UITests - token field with dropdown menu

我看到了一个关于 UITests 的 WWDC 视频也就是说,如果您双击 Xcode 中的蓝色标记字段,它将变成文本并删除菜单(也就是蓝色的东西),但是当我双击该字段时,它就会被删除。

最佳答案

双击技巧确实在 Xcode 9 中不起作用。但是,我们始终可以使用 Regex 的强大功能。

为此,请执行以下任一操作:

  • 打开左侧边栏上的“查找”导航器(左起第四个图标),然后从顶部的第一个切换按钮中选择“替换”
  • 导航至 查找/查找和替换...

  • 之后,选择正则表达式 选项:
  • 如果您使用的是查找导航器,请单击菜单并更改搜索方法
  • 或者,如果您更喜欢使用本地查找和替换对话框
  • ,则打开右侧的菜单(在带有文本 Aa 的按钮右侧)

    token 字段的开始总是用 /*@START_MENU_TOKEN@*/ 表示。 ,后跟实际选定的文本。之后,是所有可能选项的文本表示,以 @END_MENU_TOKEN@*/ 结束。 .例子:
    /*@START_MENU_TOKEN@*/.cells.buttons["Button Text"]/*[[".cells.buttons[\"Button Text\"]",".buttons[\"Button Text\"]"],[[[-1,1],[-1,0]]],[1]]@END_MENU_TOKEN@*/
    在我们的正则表达式中,我们应该删除所有内容 但是 紧接在 /*@START_MENU_TOKEN@*/ 之后的文本在选项块之前。我们可以通过捕获该片段并仅用该片段替换所有这些困惑来实现这一点。

    对于 替换 ,输入以下内容:
    /\*@START_MENU_TOKEN@\*/(.*.)/\*(.*.)@END_MENU_TOKEN@\*/
    

    ...和 ​​ ,输入:
    $1
    

    点击 替换 如果您只想删除光标后最近出现的标记字段或选择 全部 如果你想全部删除它们。

    screenshot of the Find and Replace... dialog

    关于xcode - 从 Xcode UITests 的 Menu Token 字段中选择文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49259164/

    相关文章:

    ios - 具有多个文本字段的 NS 谓词

    ios - 尝试存档时自定义 NavigationStack 导致 `error: Segmentation fault: 11` 时的解决方法建议?

    xcode7 - Xcode UI测试-带时间戳的事件匹配错误

    swift - UI 测试 - 横向模式下的系统警报

    swift - 在 UI 测试中将模拟数据插入核心数据

    ios - 在 XCode 和 IOS 7 中移动文件

    xcode - 计算 cocoa 中的目录大小

    iphone - 目标完整性 - mac os 部署目标比 sdk 更新警告

    ios - Xcode UI 测试示例

    ios - 我可以为 Xcode-UI-Tests 禁用动画吗?