我正在使用Selenium与Java结合进行Web应用程序的自动化测试。我到达某个页面,我必须从多个图表中获取一些变量。问题是:在图表后面,值在DOM中不可见。这是个 example of a chart 这是HTML:
<div data-bind="bqVisualization: {type:style, data: statistics}, title: displayName" class="">
<label data-bind="text: displayName">Totaal aantal verzoeken</label>
<div class="chart"><iframe class="chartjs-hidden-iframe" style="width: 100%; display: block; border: 0px; height: 0px; margin: 0px; position: absolute; left: 0px; right: 0px; top: 0px; bottom: 0px;"></iframe>
<canvas width="500" height="250" style="width: 500px; height: 250px;"></canvas>
</div>
</div>
我只在HTML中看到 canvas ,并且我在元素中没有变量,例如使用Selenium。
如果我在网络下进一步查看开发工具,我会找到用于填充图表的JSON变量:
{
"type": "add",
"key": "P800-C2-C0-C7",
"model": {
"key": "P800-C2-C0-C7",
"functionalKey": "P800_RapportageAflosvormSpaarrekeningHypotheek_1",
"name": "RapportageAflosvormSpaarrekeningHypotheek",
"properties": {
"value": 18
},
"children": [
],
"displayName": "Spaarrekening",
"contentStyle": "statistic",
"type": "container",
"styles": [
]
}
}
中JSON变量的屏幕截图
所以我的问题是:是否有可能以某种方式获取这些JSON变量并将它们存储在Java变量中?如果是这样,我从哪里开始?我必须使用哪些工具?或者还有其他方法吗?