我正在为自动化E2E套件创建一个报告工具,我的大部分工作到目前为止都非常顺畅。关于如何传递和/或使用我在脚本标记中创建的变量来改变样式标记的值,我现在有点卡住了。
基本上,我的报告的这一部分将为测试结果(总测试,总传递,跳过和失败)创建一些指标,然后创建一个圆圈,该圆圈应根据结果的度量进行调整(例如10通过5次传递的总测试结果为通过的圆圈为半圆形,代表50%)。
此处了解目前代码的外观:
'<script type="text/javascript">' +
'document.getElementById("titleHeader").textContent = "' + title + '";' +
'var passed = document.querySelectorAll("li.passed").length;' +
'var failed = document.querySelectorAll("li.failed").length;' +
'var skipped = document.querySelectorAll("li.pending").length;' +
'var total = passed + failed + skipped;' +
'document.querySelector("div.item.passed h2").textContent = passed;' +
'document.querySelector("div.item.failed h2").textContent = failed;' +
'document.querySelector("div.item.skipped h2").textContent = skipped;' +
'document.querySelector("h2.totalTestAmount").textContent = total;' +
'var passedCircle = (440-((passed/total)*440));' +
'var failedCircle = (440-((failed/total)*440));' +
'var skippedCircle = (440-((skipped/total)*440));' +
'</script>' +
在脚本末尾创建的三个变量将导致由dash-offset属性表示的值,我想在样式标记中传递给它。
'<style>' +
'@keyframes passed {' +
'to {' +
'stroke-dashoffset: passedCircle;' +
'}' +
'}' +
'</style>';
我已尝试在window.passedCircle
的脚本代码中执行全局类型,但这样做也无效。
我很好奇是否在完全编写和加载页面后,是否有办法进行此类修改。