XMLLibrary не работает Set Element Attribute/Set Element Text

Не понимаю что сделал не так, взял XML шаблон с доки по XMLLibrary:
http://robotframework.googlecode.com/hg/doc/libraries/XML.html

${XML}	set variable	<example>
  <first id="1">text</first>
  <second id="2">
    <child/>
  </second>
  <third>
    <child>more text</child>
    <second id="child"/>
    <child><grandchild/></child>
  </third>
  <html>
    <p>
      Text with <b>bold</b> and <i>italics</i>.
    </p>
  </html>
</example>

И меняю так как в примере:

Set Element Text	${XML}	new text	xpath=first	
Element Text Should Be	${XML}	new text	xpath=first

но текст не меняется, остается ‘text’ как и было:

FAIL : text != new text

Если заключить кусок кода между тройкой обратных кавычек,

<example>
    <first id="1">text</first>
        <second id="2">
            <child/>
        </second>
    <third>
        <child>more text</child>
        <second id="child"/>
        <child><grandchild/></child>
    </third>
    <html>
        <p>
        Text with <b>bold</b> and <i>italics</i>.
        </p>
        </html>
</example>

А ответа на вопрос я не знаю

1 лайк

Покажите пожалуйста текст всего теста. Можно скинуть его в https://gist.github.com/

И с помощью python запускаете или с помощью jython?

Вот весь код:

${XML}	set variable	<example>
  <first id="1">text</first>
  <second id="2">
    <child/>
  </second>
  <third>
    <child>more text</child>
    <second id="child"/>
    <child><grandchild/></child>
  </third>
  <html>
    <p>
      Text with <b>bold</b> and <i>italics</i>.
    </p>
  </html>
</example>	

${text} =	Get Element Text	${XML}	first
Should Be Equal	${text}	text	
Set Element Text	${XML}	text1	xpath=first
${text1} =	Get Element Text	${XML}	first
should not be equal	${text}	${text1}	

@dzhariy: спасибо за ```

1 лайк

Забыл использовать parse xml:

${root} =	Parse XML	${XML}	
${text} =	Get Element Text	${root}	first
Should Be Equal	${text}	text	
Set Element Text	${root}	text1	xpath=first
${text1} =	Get Element Text	${root}	first
should not be equal	${text}	${text1}	
```
так работает
2 лайка

чтобы уметь составлять нормально форматированный текст прочтите Ответы на вопросы - automated-testing.info

ваши посты я подправил, можете посмотреть как выглядит форматирование теперь и как нормально выглядит код

1 лайк