如何获取列表中所有子元素的文本

问题描述

在下面的图片中,我需要获取所有tspan元素的文本,该文本位于突出显示的g标签下(使用Katalon Studio进行脚本编写)

<g class="highcharts-axis-labels highcharts-xaxis-labels " data-z-index="7">
<text x="212.75" style="color:#666666;cursor:default;font-size:11px;fill:#666666;" text-anchor="middle" transform="translate(0,0)" y="183" opacity="1">
<tspan>Aug 13</tspan></text>
<text x="266.25" style="color:#666666;cursor:default;font-size:11px;fill:#666666;" text-anchor="middle" transform="translate(0,0)" y="183" opacity="1">
<tspan>Aug 14</tspan></text>
<text x="319.75" style="color:#666666;cursor:default;font-size:11px;fill:#666666;" text-anchor="middle" transform="translate(0,0)" y="183" opacity="1">
<tspan>Aug 15</tspan></text>
<text x="373.25" style="color:#666666;cursor:default;font-size:11px;fill:#666666;" text-anchor="middle" transform="translate(0,0)" y="183" opacity="1">
<tspan>Aug 16</tspan></text>
<text x="426.75" style="color:#666666;cursor:default;font-size:11px;fill:#666666;" text-anchor="middle" transform="translate(0,0)" y="183" opacity="1">
<tspan>Aug 17</tspan></text>
<text x="480.25" style="color:#666666;cursor:default;font-size:11px;fill:#666666;" text-anchor="middle" transform="translate(0,0)" y="183" opacity="1">
<tspan>Aug 18</tspan></text>
<text x="533.75" style="color:#666666;cursor:default;font-size:11px;fill:#666666;" text-anchor="middle" transform="translate(0,0)" y="183" opacity="1">
<tspan>Aug 19</tspan></text>
<text x="587.25" style="color:#666666;cursor:default;font-size:11px;fill:#666666;" text-anchor="middle" transform="translate(0,0)" y="183" opacity="1">
<tspan>Aug 20</tspan></text>
<text x="640.75" style="color:#666666;cursor:default;font-size:11px;fill:#666666;" text-anchor="middle" transform="translate(0,0)" y="183" opacity="1">
<tspan>Aug 21</tspan></text>
<text x="694.25" style="color:#666666;cursor:default;font-size:11px;fill:#666666;" text-anchor="middle" transform="translate(0,0)" y="183" opacity="1">
<tspan>Aug 22</tspan></text>
<text x="747.75" style="color:#666666;cursor:default;font-size:11px;fill:#666666;" text-anchor="middle" transform="translate(0,0)" y="183" opacity="1">
<tspan>Aug 23</tspan></text>
<text x="801.25" style="color:#666666;cursor:default;font-size:11px;fill:#666666;" text-anchor="middle" transform="translate(0,0)" y="183" opacity="1">
<tspan>Aug 24</tspan></text>
<text x="854.75" style="color:#666666;cursor:default;font-size:11px;fill:#666666;" text-anchor="middle" transform="translate(0,0)" y="183" opacity="1">
<tspan>Aug 25</tspan></text>
<text x="908.25" style="color:#666666;cursor:default;font-size:11px;fill:#666666;" text-anchor="middle" transform="translate(0,0)" y="183" opacity="1"><tspan>Aug 26</tspan></text>
</g>

need to get the text of all the tspan elements which comes under the highlighted g tag

那就是我需要在列表中获取8月12日,8月13日,8月14日等日期并获取其文本。(文本标记中的x值是动态的,并且每次会话都会变化) 我正在使用Katalon Studio编写脚本。

请指导我。 预先感谢。

编辑:(无效) 公共类VerifyChartData {

private static void compareChartDataWithTable(){
    
    TestObject selector_datapoints = new TestObject().addProperty(
    'xpath',com.kms.katalon.core.testobject.ConditionType.EQUALS,'//div[@id="container"]/div/*[local-name()="svg"]/*[local-name()="g" and contains(@class,"highcharts-axis-labels") and contains(@class,"highcharts-xaxis-labels")]',true)
     
         List<WebElement> datapoints = WebUI.findWebElements(selector_datapoints,30)
         
         KeywordUtil.logInfo(datapoints.get(0).toString())
             
         
     }
}

解决方法

使用以下代码解决了该问题-

私有静态void compareChartDataWithTable(){

TestObject selector_datapoints = new TestObject().addProperty(
        'xpath',com.kms.katalon.core.testobject.ConditionType.EQUALS,'//div[@id="container"]/div/*[local-name()="svg"]/*[local-name()="g" and contains(@class,"highcharts-axis-labels") and contains(@class,"highcharts-xaxis-labels")]',true)


List<WebElement> datapoints = WebUI.findWebElements(selector_datapoints,30)
for(int i = 0; i < datapoints.size; i++){
    KeywordUtil.logInfo(datapoints[i].getText())
    }

} 结果: 2020-08-27 12:25:41.585调试测试用例。检查SP关键字仪表板-5:******。VerifyChartData.compareChartDataWithTable() 2020-08-27 12:25:46.641 INFO com.kms.katalon.core.util.KeywordUtil-8月13日 8月14 8月15 8月16 8月17 8月18 8月19 8月20 8月21 8月22 8月23 8月24 8月25 8月26 2020-08-27 12:25:46.643信息k.k.c.m.CustomKeywordDelegatingMetaClass-******。VerifyChartData.compareChartDataWithTable已通过

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...