一、是什么

Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库。

中文官方文档:https://beautifulsoup.readthedocs.io/zh_CN/v4.4.0/

二、目标

提取html报告中的case数(总数/成功/失败),在钉钉通知上显示。

三、代码示例

import requests
import json
from bs4 import BeautifulSoup
import re file = open('/Users/lk/Desktop/20200729T101237.229802.html', 'rb')
html = file.read()
bs = BeautifulSoup(html, "html.parser") # 初始化BeautifulSoup对象
a = []
for child in bs.body.table.descendants: # 获取table子孙节点的内容
a.append(child.string)
# print(child.string)
print(a)
print(a[len(a) - 3])
s = str(a[len(a) - 3]) # 获取目标内容,并转换为string
l2 = re.findall(r"\d+\.?\d*", s) # 正则提取string中的数字,返回列表
print(l2) # 请求地址
post_url = "https://oapi.dingtalk.com/robot/send?access_token=9de1b6fd05173c3c5622ea6efd1b484413ad95742204649645b16a3f629d7c23" # 消息头部
headers = {'Content-Type': 'application/json'} # 消息主体
text = "概要:本次共执行 " + l2[0] + " 个Case,成功 " + l2[1] + " 个,失败 " + l2[2] + " 个""\n点击查看HTML测试报告" data = {
"msgtype": "link",
"link": {
"text": text,
"title": "接口自动化测试报告",
"picUrl": "xxx.jpg",
"messageUrl": "yyy.html"
}
} # 使用post请求推送消息
requests.post(post_url, data=json.dumps(data), headers=headers)

四、钉钉通知效果

BeautifulSoup优化测试报告的更多相关文章

  1. python+unittest框架第六天unittest之优化测试报告

    今天的内容主要是,用第三方的HTMLRUNner 第三方的报告来优化之前第五天批量执行案例的测试报告.案例的部分看第五天的批量执行笔记~ HTMLRUNner他可以生成更美观的测试报告,基于前辈造的车 ...

  2. 【Jenkins】testng+testNgXslt+ant优化测试报告

    步骤: 准备: testng-results.xsl saxon-8.7.jar 下载地址:http://download.csdn.net/download/a804229570/10210509 ...

  3. TestNG+ReportNG+Maven优化测试报告

    转载:https://www.cnblogs.com/hardy-test/p/5354733.html 首先在eclipse里面创建一个maven项目,具体要配置maven环境,请自行百度搭配环境. ...

  4. JMeter(6) jenkins测试报告及邮件优化

    jenkins邮件 使用jenkins执行完任务自动将测试结果发送到邮箱,效果如下:     生成html报告 build文件设置     jenkins设置 SummaryReport写入邮件正文 ...

  5. Selenium2+python自动化31-生成测试报告

    前言 最近小伙伴们总有一些测试报告的问题,网上的一些资料生成报告的方法,我试了都不行,完全生成不了,不知道他们是怎么生成的,同样的代码,有待研究. 今天小编写一下可以生成测试报告的方法.个人觉得也是最 ...

  6. python实例编写(7)---测试报告与测试套件(多个py文件,1个py文件内多个用例)

    一.  一个.py文件批量执行测试用例(一个.py文件下多个用例执行) 如果直接使用:unittest.main(),则按字母顺序执行, 对于前后之间又依赖关系的用例,需要按特定的顺序执行,则使用 s ...

  7. Jmeter 自动化测试报告扩展

    首先了解下生成测试报告的过程,我们看到的测试报告是由.jtl格式转换为.html,html报告的样式由extras目录下xsl文件决定.优化测试报告需要分为两部分内容,首先我们要优化输出的测试内容,其 ...

  8. Appium+python HTML测试报告(1)(转)

    (原文:https://www.cnblogs.com/fancy0158/p/10054632.html) 测试任务执行完成后,我们需要一份通俗易懂的测试报告来展示自动化测试的结果. HTMLTes ...

  9. 生成HTML测试报告

    HTMLTestRunner是Python标准库unittest单元测试框架的一个扩展,可以生成易于使用的HTML测试报告,这个扩展很简单,只有一个HTMLTestRunner.py,下载地址:htt ...

  10. Jmeter 自动化测试报告扩展(转 Todo 需要修正)

    首先了解下生成测试报告的过程,我们看到的测试报告是由.jtl格式转换为.html,html报告的样式由extras目录下xsl文件决定.优化测试报告需要分为两部分内容,首先我们要优化输出的测试内容,其 ...

随机推荐

  1. BMC Genomics | 综合代谢组学和转录组学分析揭示了菊花黄酮和咖啡酰奎宁酸的生物合成机制

    杭白菊是一种流行的药用和食用植物,主要通过黄酮类和咖啡酰奎宁酸(CQAs)的存在发挥其生物活性.然而,菊花头状花序中黄酮和CQA生物合成的调控机制尚不清楚. 本研究采用高效液相色谱法测定了菊花头状花序 ...

  2. double四舍五入保留两位小数的方法

    1,DecimalFormat DecimalFormat decimalFormat = new DecimalFormat(".00"); 意思就是规定保留几位小数 使用时 d ...

  3. .Net Aspire次体验

    上次用上了在微软MVP的带领下用上了Aspire,在开发阶段隐藏了细节,什么都不用做,点个调试按钮就跑起来了,可是部署时出现了难题, 因为发布时只能选择Azure环境,为此注册了Azure,开了科网. ...

  4. 14-canvas绘制柱状图

    1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="U ...

  5. SMU Summer 2024 Contest Round 5

    SMU Summer 2024 Contest Round 5 Robot Takahashi 思路 按照 \(W_i\) 排个序,算一下前缀后缀 1 和 0 的个数就行了.答案大概是一个 \(\ma ...

  6. Linux下错误解决方案

    错误 "E: Unable to correct problems, you have held broken packages."这种问题包破坏问题,可能是由于镜像源与系统版本不 ...

  7. docker启动一个不停止的centos系统容器

    启动的镜像后加上/usr/sbin/init ,前提是镜像中没有设置entrypoint

  8. QTreeWidget折叠子项(折叠当前项的所有子项)

    QTreeWidget折叠子项(折叠当前项的所有子项) 本文仅供本人知识总结使用,所以内容会比较浅显,不喜勿喷. 文章目录 QTreeWidget折叠子项(折叠当前项的所有子项) 一.仅折叠子项 二. ...

  9. 简单理解.net 依赖注入的三种方式

    前言 :.NET5.0 于2020年11月10日正式发布,它是3.1之后的 .NET Core 的下一个主要版本.微软将这个新版本命名为 .NET 5.0 而不是 .NET Core 4.0,其原因有 ...

  10. 【YashanDB知识库】存储过程报错snapshot too old

    问题描述 20231127上午客户反馈绩效系统20231125.20231126出现2次YAS-02020 snapshot too old的问题,测试也有类似问题. 该过程是客户新增的存储过程,目的 ...