Using upper-case and lower-case xpath functions in selenium IDE

旧街凉风 提交于 2019-11-26 04:49:05

问题


I am trying to get a xpath query using the xpath function lower-case or upper-case, but they seem to not work in selenium (where I test my xpath before I apply it).

Example that does NOT work:

//*[.=upper-case(\'some text\')]

I have no problem locating the nodes I need in complex path and even using aggregated functions, as long as I don\'t use the upper and lower case.

Has anyone encountered this before? Does it make sense?

Thanks.


回答1:


upper-case() and lower-case() are XPath 2.0 functions. Chances are your platform supports XPath 1.0 only.

Try:

translate('some text','abcdefghijklmnopqrstuvwxyz','ABCDEFGHIJKLMNOPQRSTUVWXYZ')

which is the XPath 1.0 way to do it. Unfortunately, this requires knowledge of the alphabet the text uses. For plain English, the above probably works, but if you expect accented characters, make sure you add them to the list.




回答2:


If you are going to need upper case in multiple places in your xslt, you can define variables for the lower case and upper case and then use them in your translate function everywhere. It should make your xslt much cleaner.

Example at XSL/XPATH : No upper-case function in MSXML 4.0 ?



来源:https://stackoverflow.com/questions/1625446/using-upper-case-and-lower-case-xpath-functions-in-selenium-ide

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!