Я использую TinyXPath для улучшения существующего тестового инструмента, чтобы можно было извлекать и использовать данные из XML-структуры клиента.В TinyXPath, как запрашивать данные путем индексирования содержимого элемента
XML-выглядит следующим образом
<Platform>
<LinkData>
<Plan>
<Label>A</Label>
<Settings>
<SomeSetting1>ENABLED</SomeSetting1>
<SomeSetting2>ENABLED</SomeSetting2>
</Settings>
</Plan>
<Plan>
<Label>B</Label>
<Settings>
<SomeSetting1>ENABLED</SomeSetting1>
<SomeSetting2>DISABLED</SomeSetting2>
</Settings>
</Plan>
</LinkData>
</Platform>
Учитывая выше структура, которую я не имею никакого контроля, мне нужно, чтобы иметь возможность построить XPath выражения для TinyXPath. Просто попробуйте TinyXPath вернуть значения в поля SomeSetting1/2, заданные при правильном значении дочернего ярлыка (разрешить на true), чтобы тестовое приложение могло их использовать.
Я пробовал следующее, но борьба с этим способом индексируется с использованием дочернего элемента (обычно я ожидаю использование атрибута. Вот моя попытка, которая не возвращает результат (например, ENABLED/DISABLED): -
Platform/LinkData/Plan[child::Label='A']/Settings/SomeSetting1/text()
Platform/LinkData/Plan[child::Label='A']/Settings/SomeSetting2/text()
Platform/LinkData/Plan[child::Label='B']/Settings/SomeSetting1/text()
Platform/LinkData/Plan[child::Label='B']/Settings/SomeSetting2/text()
Любая дополнительная помощь от TinyXPath гуру были бы оценены - спасибо
// Настройки/child :: node() (добавить/текст() в конец, если вы просто хотите использовать текст с включенным/отключенным вместо узлов). Или вы пытаетесь получить только метки A и B? – JWiley
Тест должен возвращать текстовые значения для SomeSetting1 & 2 сначала для плана «Маркированный» A, а затем для плана «Labeled» B. Спасибо. – mactwixs