Ruby on Rails: Xpath: не удалось получить XPath - PullRequest
0 голосов
/ 25 июня 2010

Это ошибка, которую я получаю:

NativeException: java.lang.RuntimeException: Could not retrieve XPath >//id[@class='open'//@id='status_open']< on HtmlPage(http://cucumber.test.com/proposals/view-me/edit#)@17325460 (Culerity::CulerityException)

Это моя команда Cucumber

Then the "li" tag with the id "status_open" should have the class "open"

Это мое определение шага

Then /^the "([^\"]*)" tag with the id "([^\"]*)" should have the class "([^\"]*)"$/ do |tag,id,clas|


if page.respond_to? :should
      page.should have_xpath("//#{tag}[@class='#{clas}',@id='#{id}']")
    else
      assert page.have_xpath("//#{tag}[@class='#{clas}',@id='#{id}']")
    end
end

и вотHTML:

<li class="open" id="status_open">
                      <a href="#">
                        Open
                      </a>
                    </li>

похоже, что он должен работать, основываясь на этом обучении:

http://www.w3schools.com/xpath/xpath_syntax.asp

Идеи?

1 Ответ

0 голосов
/ 25 июня 2010

//id[@class='open'//@id='status_open']

не является синтаксически правильным выражением XPath.

Я должен догадаться ... Может быть, вы хотели :

//li[@class='open' and @id='status_open']

...