“(By | Function)”在Javascript中的含义是什么?

时间:2017-12-18 21:51:49

标签: javascript selenium

一开始我想说我不是Javascript的“母语”。

我正在Selenium Webdriver中编写UI自动化测试,我尝试尽可能地理解框架。在the documentation of Selenium Webdriver中有WebElement类的描述。该类有一个名为findElement的方法,该方法传递locator参数。参数类型为(By|Function)。我不明白(By|Function)符号。 locator参数的确切类型是什么?是某类课的对象吗?这是什么意思?最后,我可以说By是Selenium Webdriver中的另一个类。

2 个答案:

答案 0 :(得分:2)

在Selenium文档中,符号(A|B)表示" AB"。因此,(By|Function)表示locator参数应为By类型或Function类型。 Function是函数的标准JavaScript类型名称。 By是一个Selenium类,根据the docs:"描述了一种在页面上定位元素的机制。"

findElement的文档页面显示了使用这些参数类型的示例。

答案 1 :(得分:2)

这不是标准的JavaScript语法,而是用于记录类型的语法。 JavaScript文档中的类型有一些不同的第三方语法:JSDoc(其语法与Google Closure Compiler中记录较好的Closure Type System相同),TypeScript和{ {3}}

如果是(By|Function),那么这是什么语法并不重要,因为|在每个语法中都是相同的。 |表示“或”,类似于||,JavaScript中的“或”运算符。 Function表示function() { console.log('hi') }等任何功能。 By特定于Selenium - 如果您在链接的Selenium文档中单击它,您会发现它是Flow的链接,这是您可以使用JavaScript API构建的类。