一个类似 pytest 的 html 报告

复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        table {
            border-collapse: collapse;
            width: 95%;
            margin: 0 auto;
        }
        table, th, td {
            border: 1px solid black;
        }
        .case-result {
            margin-top: 50px;
        }
        pre {
            white-space: pre-wrap;
            max-height: 600px;
            overflow: auto;
            font-size: 12px;
            background-color: #d7d7d7;
        }
        .hidden {
            display: none;
        }
    </style>

</head>
<body>
<table class="env">
    <thead>
        <tr>
            <th>配置名</th>
            <th>配置值</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>软件版本</td>
            <td>v1.0.0</td>
        </tr>
        <tr>
            <td>测试时间</td>
            <td>2025-10-20</td>
        </tr>
    </tbody>
</table>

<table class="case-result">
    <thead>
        <tr>
            <th>用例名称</th>
            <th style="width: 10%;">耗时(s)</th>
            <th style="width: 10%;">测试结果</th>
            <th>日志详情</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>用例1</td>
            <td>2</td>
            <td>成功</td>
            <td><button class="show_detail">显示/关闭详情</button></td>
        </tr>
        <tr class="detail hidden">
            <td colspan="4">
                <pre>
log
log
log
log
log
log
log
log
log
log
log
log
log
log
log
log
log
log
                </pre>
            </td>
        </tr>
                <tr>
            <td>用例2</td>
            <td>1</td>
            <td>成功</td>
            <td><button class="show_detail">显示/关闭详情</button></td>
        </tr>
        <tr class="detail hidden">
            <td colspan="4">
                <pre>
log
log
log
log
log
log
log
log
log
log
log
log
log
log
log
log
log
log
                </pre>
            </td>
        </tr>
    </tbody>
</table>
</body>
<script>
    let detail_btns = document.getElementsByClassName("show_detail")
    for(let btn of detail_btns){
        btn.addEventListener("click", ()=>{
            detail_elemnet = btn.parentNode.parentNode.nextElementSibling
            if(detail_elemnet.classList.contains("hidden")){
                detail_elemnet.classList.remove("hidden")
            }else{
                detail_elemnet.classList.add("hidden")
            }
        })
    }
</script>
</html>

显示效果

相关推荐
火柴就是我13 小时前
让我们实现一个更好看的内部阴影按钮
android·flutter
砖厂小工20 小时前
用 GLM + OpenClaw 打造你的 AI PR Review Agent — 让龙虾帮你审代码
android·github
张拭心20 小时前
春节后,有些公司明确要求 AI 经验了
android·前端·人工智能
张拭心21 小时前
Android 17 来了!新特性介绍与适配建议
android·前端
willow1 天前
html5基础整理
html
Kapaseker1 天前
Compose 进阶—巧用 GraphicsLayer
android·kotlin
黄林晴1 天前
Android17 为什么重写 MessageQueue
android
阿巴斯甜2 天前
Android 报错:Zip file '/Users/lyy/develop/repoAndroidLapp/l-app-android-ble/app/bu
android
Kapaseker2 天前
实战 Compose 中的 IntrinsicSize
android·kotlin
xq95272 天前
Andorid Google 登录接入文档
android