Geb:文本()与值()
Geb: text() vs value()
只是关于使用 Geb text() 与 value() 的小说明。
根据 Geb 文档:
The value text is treated specially as a match against the node’s text.
对于值():
Calling value() with no arguments will return the String value of the first element in the Navigator.
根据我通过反复试验的理解,text() 可用于 check/set 特定元素中的文本内容,表单元素除外。 value() 用于 check/set 表单元素的内容。
assertThat($("h1").text()).isEqualTo("Geb") // will work
assertThat($("input").value()).isEqualTo("Geb") // will work
assertThat($("input").text()).isEqualTo("Geb") // will not work
这是正确的吗?还是有更大的分化?我在文档中找不到任何实质性描述。
提前致谢!
您不能使用 text()
设置任何内容,它只能 returns 第一个元素的文本内容。它基本上委托给 WebElement.getText().
您引用的文字:
The value text is treated specially as a match against the node’s text.
与使用像`$("div", text: "Lorem ipsum...").
这样的属性选择器有关
是的,value()
和 value(Object)
可用于检索和设置输入的 value/text。
只是关于使用 Geb text() 与 value() 的小说明。
根据 Geb 文档:
The value text is treated specially as a match against the node’s text.
对于值():
Calling value() with no arguments will return the String value of the first element in the Navigator.
根据我通过反复试验的理解,text() 可用于 check/set 特定元素中的文本内容,表单元素除外。 value() 用于 check/set 表单元素的内容。
assertThat($("h1").text()).isEqualTo("Geb") // will work
assertThat($("input").value()).isEqualTo("Geb") // will work
assertThat($("input").text()).isEqualTo("Geb") // will not work
这是正确的吗?还是有更大的分化?我在文档中找不到任何实质性描述。
提前致谢!
您不能使用 text()
设置任何内容,它只能 returns 第一个元素的文本内容。它基本上委托给 WebElement.getText().
您引用的文字:
The value text is treated specially as a match against the node’s text.
与使用像`$("div", text: "Lorem ipsum...").
这样的属性选择器有关是的,value()
和 value(Object)
可用于检索和设置输入的 value/text。