我有一个UITableViewCell,它由一个UITextLable和一个UITextField组成
此UITextField没有占位符和可访问性提示
我必须编写我的功能文件,然后触摸此UITextFeild by标签。

当/ ^我触摸(\ d *)(?: st | nd | rd | th)吗?文字栏位$ /做| ordinal |
    ordinal = ordinal.to_i
    text_field_selector =“ textField标签:#{ordinal}”
    触摸(text_field_selector)
结束


使用此步骤定义,frank(cucumber)引发错误消息,指出找不到与[textFeild标签:2]相匹配的内容。

而且我将代码更改为:

当/ ^我触摸(\ d *)(?: st | nd | rd | th)吗?文字栏位$ /做| ordinal |
    ordinal = ordinal.to_i
    text_field_selector =“ textField标签:#{ordinal}”
    frankly_map(text_field_selector,'becomeFirstResponder')
结束


现在,弗兰克终于没有提出任何错误消息,并标记为已通过测试步骤,但是我期望当进入此测试步骤时,键盘会出现并停留在等待用户输入文本的状态。
实际结果是键盘闪烁了一下,然后迅速消失了。什么都不能输入。

这很奇怪,我不确定这是怎么回事。

最佳答案

我不知道坦率,但是您可以使用ask方法在Cucumber的控制台中捕获一个参数。看起来像这样:

When /^I touch the text field$/ do
    ordinal = ask("Which field number?").to_i
    text_field_selector = "textField tag:#{ordinal}"
    touch (text_field_selector)
end

10-04 14:08