webdriverio findelements и $$ options возвращают ошибку Typescript getText не является функцией - PullRequest
0 голосов
/ 01 октября 2018

У меня есть тег HTML ниже, сгенерированный как часть старшей диаграммы

<g class="highcharts-axis-labels highcharts-xaxis-labels " data-z-index="7">
<text x="332.3333333333367" style="color:#666666;cursor:default;font-size:13;fill:#666666;" text-anchor="middle" transform="translate(0,0)" y="246" opacity="1">60</text>
<text x="886.9999999999668" style="color:#666666;cursor:default;font-size:13;fill:#666666;" text-anchor="middle" transform="translate(0,0)" y="246" opacity="1">65</text>
<text x="1441.6666666666667" style="color:#666666;cursor:default;font-size:13;fill:#666666;" text-anchor="middle" transform="translate(0,0)" y="246" opacity="1">70</text>
</g>

Я пытаюсь извлечь все текстовые значения в нем и использовал приведенную ниже команду

xAxis =  $('.highcharts-xaxis-labels').$$('text').getText();

Я пыталсяbrowser.findelements также использует XPATH.Но с обоими я получаю сообщение об ошибке

TypeError: $ (...). $$ (...). GetText не является функцией

1 Ответ

0 голосов
/ 12 октября 2018

Проблема здесь в том, что $$ (псевдоним для getElements) возвращает массив элементов, а не только один элемент.У элемента есть метод getText(), но у массива его нет.

Если вы хотите получить список всех значений, вам необходимо сопоставить список элементов со значением каждого элемента:

$('.highcharts-xaxis-labels').$$('text').map(textElement => textElement.getText());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...