2017-12-18 9 views
1

私はJavascriptの「ネイティブスピーカー」ではないと言いたいと思います。Javascriptでは "(By | Function)"の意味は何ですか?

私はSelenium WebdriverでUI自動化テストを書いており、できるだけフレームワークを理解しようとしています。 the documentation of Selenium Webdriverには、WebElementクラスの説明があります。クラスにはfindElementというメソッドがあり、このメソッドはlocatorパラメータを渡します。パラメータのタイプは(By|Function)です。私は理解できません(By|Function)表記。 locatorパラメータのタイプは正確には何ですか?それはあるクラスの対象ですか?どういう意味ですか?最後に、私はちょうどByがSelenium Webdriverの別のクラスだと言うことができます。

+0

関数またはBy.tagName型のオプションを渡すことを参照しているようです。 – tadman

答えて

2

セレンのドキュメントでは、(A|B)という表記は「AまたはB」を意味します。したがって、(By|Function)は、locatorパラメータがByタイプまたはFunctionタイプであると予想されることを意味します。 Functionは、関数である何かの標準JavaScript型名です。 Byは、the docsに従って「ページ上の要素の位置を特定するメカニズムを説明するセレンのクラスです。

findElementのドキュメントページには、これらの各引数タイプの使用例が示されています。

2

これは標準のJavaScriptシンタックスではありませんが、タイプを文書化するための構文です。 JavaScriptドキュメントのタイプには、サードパーティの構文がいくつかあります。JSDoc(その構文は、Googleクローズコンパイラの文法と一致するものがClosure Type Systemと同じです)、TypeScriptFlowです。

(By|Function)の場合、|はそれぞれ同じ意味であるため、どのような構文であっても構いません。 |は、||と同様に、JavaScriptの "or"演算子である "or"を意味します。 Functionは、function() { console.log('hi') }などの任意の機能を意味します。 ByはSelenium固有のものです。リンクしたSeleniumのドキュメントをクリックすると、JavaScript APIを使用して構築できるクラスであるClass Byへのリンクが見つかります。

関連する問題