您现在可能已经找到了解决方案,但我遇到了同样的问题并发布了我的解决方案,希望它可以帮助其他人。
输出语句在转换后正确包含在 html 文件中,并在单击测试名称时显示。但真正的问题是当我们点击测试名称时,什么也没有发生。 Click 事件不起作用,因为 bootstrap js 文件的 script 标记在转换为 html 时未正确转换。
所以在任何编辑器中打开html-report-bootstrap.xslt,你会发现最后添加的3个.js文件如下:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.5.4/dist/umd/popper.min.js" integrity="sha384-q2kxQ16AaE6UbzuKqyBE9/u/KzioAlnx2maXQHiDX9d4/zp8Ok3f+M7DPm+Ib6IU" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/js/bootstrap.min.js" integrity="sha384-pQQkAEnwaBkjpqZ8RU1fF1AKtTcHJwFl3pblpTlHXybJjHpMYo79HY3hIi4NKxyj" crossorigin="anonymous"></script>
但是当它被转换为 html 文件时,所有 3 个 js 文件都添加了如下带有self-closing script 标签的,它在 Chrome / Firefox 浏览器中不起作用。因此,测试名称上的单击事件不起作用。查看此问题here 了解更多信息。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js" />
<script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.5.4/dist/umd/popper.min.js" integrity="sha384-q2kxQ16AaE6UbzuKqyBE9/u/KzioAlnx2maXQHiDX9d4/zp8Ok3f+M7DPm+Ib6IU" crossorigin="anonymous" />
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta1/dist/js/bootstrap.min.js" integrity="sha384-pQQkAEnwaBkjpqZ8RU1fF1AKtTcHJwFl3pblpTlHXybJjHpMYo79HY3hIi4NKxyj" crossorigin="anonymous" />
所以现在作为临时解决方案,我修改了html-report-bootstrap.xslt 文件并在标签之间添加了一些JS,如下所示:
//include the full path
<script src="jquery.js">let x;</script>
<script src="popper.min.js">let y;</script>
<script src="bootstrap.min.js">let z;</script>
所以现在当它转换为 html 时,没有更多的 self-closing script tag 并且您可以在单击测试名称时看到您的输出语句,如下所示: