Может быть, это потому, что вы забыли пробел в начале ссылки?
selenium.click("link=' What Ever Company'");
^
Другой возможный способ щелкнуть ссылку - использовать выражение XPath:
selenium.click("//a[contains(.,'What Ever Company')]");
Это будет соответствовать всем ссылкам с 'What Ever Company' в нем.
Если хотите точнее:
selenium.click("//a[.=' What Ever Company']");
Это будет совпадать только в том случае, если якорь равен «What Ever Company».
Другой вариант - сделать поиск более конкретным (т.е. сообщить локатору, что эта ссылка всегда находится внутри <td>
с <a>
внутри):
selenium.click("//td[a]/a[contains(.,'What Ever Company')]");
//td[a]
ищет все <td>
элементы с <a>
внутри. (Отличается от //td/a
тем, что если вы ищите элементы с //td[a][2]
, вы получите второе <a>
, которое находится внутри <td>
, тогда как //td/a[2]
с другой стороны получает второе <a>
первого <td>
.)
EDIT: я думал, что использование .
в качестве ссылки на text()
в выражениях XPath должно работать, но если это не так, попробуйте вместо этого использовать text()
.