0

私はいくつかの単体テストを行っており、テストの一環として、XML スクリプトが Xpath を使用して HTML 要素を見つけます。

他のテスターから、 などの明示的な ID を含める[@id="IDName"]と、アプリケーションが要素をより迅速に見つけられるようになるため、パフォーマンスが向上すると言われました。

それは本当ですか、それとも神話ですか?

例として、これらは私が扱っているいくつかの Xpath です。

ID なしの XPATH:

/html/body/div[2]/div/div/div[3]/div/table/tbody//tr

ID 付きの XPath:

//body[@id= "body"]/div[@id= "wrapper"]/div[@id= "MainContent"]/div[@id="Grid"]/div[@id="DataTableContainer"]/div/table/thead

Java は、最初の要素よりも 2 番目の要素をより速く見つけることができるのでしょうか?

4

1 に答える 1

1

それはすべて、使用している XPath プロセッサに依存します。

測って見てください。

id() 関数を使用すると、述語を使用するよりも高速にアクセスできる可能性が高くなりますが、これは DTD 定義の ID 属性に依存します。

確実に索引付けされたアクセスが必要な場合は、XSLT と key() 関数を使用してください。

于 2013-10-01T22:31:07.233 に答える