整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

Httprunner生成Allure格式HTML报告

Httprunner生成Allure格式HTML报告

、httprunner v2.x版本的报告

最近组内其他同学使用httprunner做接口自动化,之前没有接触过httprunner,发现httprunner相比pytest和unittest有自己的特点。

  • 脚本能力要求较低
  • 完备且轻量的脚手架
  • 脚本产出速度快
  • 自带可视化的HTML报告

看到了以上这些有点,我也在项目中使用下httprunner,确实有它优雅的一面,但httprunner自带的HTML格式的报告相对来说比较

简单,表现为:测试结果维度展现有限、无法区分用例优先级、不方便查看错误信息等。

二、httprunner v3.x版本的报告

本打算自己折腾一番,把v2.x版本的报告用Allure去描述。

经确认,httprunner v3.x 版本集成了Allure,既然如此,那就赶快把报告转成“漂亮”的Allure格式吧。

这里省去了 httprunner v3.x 使用方法的介绍,使用方法最好的方式还是查看官方文档,本篇主要讨论Allure报告的生成方法。

步骤如下:

step1:生成Allure报告数据

$ hrun --alluredir allure-results --clean-alluredir     # 当用例格式为py文件时,可以用“pytest”替换“hrun”,作用相同
--alluredir:生成allure报告的原始数据 

allure-results:原始数据的保存位置
--clean-alluredir:清除allure-results历史数据

生成的报告数据包含2个文件:1个json文件、1个txt文件,如下:

step2:生成Allure报告

$ allure generate allure-results -o allure-report

-o 指定生成报告的文件夹
-c 在生成报告之前先清理之前的报告目录

生成的allure-report报告文件夹包含以下数据,其中index.html是测试报告的入口。

执行step2的前提是已经安装Allure,mac安装命令:

brew install allure

step3:打开Allure报告

allure open allure-report

# 启动默认浏览器打开Allure测试报告 

Allure的测试报告纬度多样且详细,还支持依据所需做个性化的定义。

查看Allure官方文档,获取更多Allure的用法。

地址:

https://docs.qameta.io/allure/

写好的CSS代码能提升页面的渲染速度。本质上,一条规则都没有引擎解析的最快。MDN上将CSS选择符归拆分成四个主要类别,如下所示,性能依次降低。

  • ID 规则
  • Class 规则
  • 标签规则
  • 通用规则

对效率普遍认识是从Steve Souders在2009年出版的《高性能网站建设进阶指南》开始的,虽然Souders的书中罗列的非常详细,你可以在这里查看完整列表引用。你也可以在谷歌的高效的CSS选择器的最佳实践中查看更多的细节。

本文我想分享一些我在编写高性能CSS中用到的简单的例子和指导方针。受MDN的编写高效的CSS指南的启发,并遵循类似的格式。

避免过度约束

作为一般规则,不添加不必要的约束。

// 糟糕
ul#someid {..}
.menu#otherid{..}

// 好的
#someid {..}
#otherid {..}

后代选择符最烂

不仅性能低下而且代码很脆弱,html代码和css代码严重耦合,html代码结构发生变化时,CSS也得修改,这是多么糟糕,特别是在大公司里,写html和css的往往不是同一个人。

// 烂透了
html div tr td {..}

避免链式(交集)选择符

这和过度约束的情况类似,更明智的做法是简单的创建一个新的CSS类选择符。

// 糟糕
.menu.left.icon {..}

// 好的
.menu-left-icon {..}

坚持KISS原则

想象我们有如下的DOM:

<ul id="navigator">
    <li><a href="#" class="twitter">Twitter</a></li>
    <li><a href="#" class="facebook">Facebook</a></li>
    <li><a href="#" class="dribble">Dribbble</a></li>
</ul>

下面是对应的规则……

// 糟糕
#navigator li a {..}

// 好的
#navigator {..}

使用复合语法

尽可能使用复合语法。

// 糟糕
.someclass {
 padding-top: 20px;
 padding-bottom: 20px;
 padding-left: 10px;
 padding-right: 10px;
 background: #000;
 background-image: url(../imgs/carrot.png);
 background-position: bottom;
 background-repeat: repeat-x;
}

// 好的
.someclass {
 padding: 20px 10px 20px 10px;
 background: #000 url(../imgs/carrot.png) repeat-x bottom;
}

避免不必要的命名空间

// 糟糕
.someclass table tr.otherclass td.somerule {..}

//好的
.someclass .otherclass td.somerule {..}

避免不必要的重复

尽可能组合重复的规则。

// 糟糕
.someclass {
 color: red;
 background: blue;
 font-size: 15px;
}

.otherclass {
 color: red;
 background: blue;
 font-size: 15px;
}

// 好的
.someclass, .otherclass {
 color: red;
 background: blue;
 font-size: 15px;
}

尽可能精简规则

在上面规则的基础上,你可以进一步合并不同类里的重复的规则。

// 糟糕
.someclass {
 color: red;
 background: blue;
 height: 150px;
 width: 150px;
 font-size: 16px;
}

.otherclass {
 color: red;
 background: blue;
 height: 150px;
 width: 150px;
 font-size: 8px;
}

// 好的
.someclass, .otherclass {
 color: red;
 background: blue;
 height: 150px;
 width: 150px;
}

.someclass {
 font-size: 16px;
}

.otherclass {
 font-size: 8px;
}

避免不明确的命名约定

最好使用表示语义的名字。一个好的CSS类名应描述它是什么而不是它像什么。

避免 !importants

其实你应该也可以使用其他优质的选择器。

遵循一个标准的声明顺序

虽然有一些排列CSS属性顺序常见的方式,下面是我遵循的一种流行方式。

.someclass {
 /* Positioning */
 /* Display & Box Model */
 /* Background and typography styles */
 /* Transitions */
 /* Other */
}

组织好的代码格式

代码的易读性和易维护性成正比。下面是我遵循的格式化方法。

// 糟糕
.someclass-a, .someclass-b, .someclass-c, .someclass-d {
 ...
}

// 好的
.someclass-a, 
.someclass-b, 
.someclass-c, 
.someclass-d {
 ...
}

// 好的做法
.someclass {
    background-image:
        linear-gradient(#000, #ccc),
        linear-gradient(#ccc, #ddd);
    box-shadow:
        2px 2px 2px #000,
        1px 4px 1px 1px #ddd inset;
}

显然,这些只是极少数的规则,是我在我自己的CSS中,本着更高效和更易维护性而尝试遵循的规则。如果你想阅读更多的知识,我建议阅读MDN上的编写高效的CSS和谷歌指南上的优化浏览器渲染。

(上)地理《工业》(第二课时)“蓬勃发展的高新技术产业”

教学设计

●教学目标https://www.shimengyuan.com/nianji/1632.html

知识与能力

了解我国高新技术产业的发展和分布特点。

过程与方法

能用图分析我国高新技术产业开发区多依附于大城市,具有大分散、小集中的分布

特点。

情感态度与价值观https://www.renjiaoshe.com/jiaocai/1550.html

通过学习我国高新技术产业的发展,以及所取得的巨大成就,培养学生的爱国主义

精神。

●教学重难点

高新技术产业的概念与特点。

我国高新技术产业区的分布。

●教学方法

讲练结合法、讨论分析法等。

●教具准备 投影仪、录像资料、电脑、图片文字资料等。

●课时安排 1课时

●教学过程


一、导入情境

1、出示课题:八(上)第四章第三节——《工业》(第二课时)“蓬勃发展的高新技术产业”

2、视频:《C919客机试飞成功》,展现我国高新技术水平

3、出示本课学习目标:

*阅读教材了解基本内容。

*辨析高新技术产业是一种什么产业?

*认识中关村。

*分析我国高新技术产业开发区的分布特点。

*了解我国高新技术的发展状况。

二、阅读教材,初步认识高新技术产业

1、、阅读教材,完成5小题:

(1)(电子信息)、(生物工程)、新能源和新材料等高新技术产业从无到有,蓬勃发展,成为带动我国工业实现 ( 科学发展 ) 的重要因素。

(2)现状:我国首个国家级高新技术产业开发区是 (北京的中关村) 。

(3)我国的国家级高新技术产业分布的特点:(多依附大中城市。东部地区发展速度远高于中、西部地区,长江三角洲、珠江三角洲、环渤海地区成为高新技术产业聚集区。)

(4)我国是世界最大的 ( 电子信息产品) 制造国,手机、彩电、计算机、程控交换机等 的产量位居全球第一。

(5)湖北 (武汉东湖新技术开发区) 是我国第一个国家级的 ( 光电产业) 基地所在,其光电产业业领先国际,被形象地称为“ (中国光谷)”。

三、思考与讲解

1、高新技术产业是一种什么产业?

高新技术产业是建立在新的科学技术基础上的新兴产业。高新技术产业的发展水平,是衡量一个国家科技实力和综合国力的重要标志。

高新技术包括:微电子科学与电子信息技术、光电子科学与机电一体化技术、空间科学与航空航天技术、生命科学与生物工程技术、能源科学与新能源和高效节能技术、生态科学与环保技术、地球科学与海洋工程技术、基本物质与辐射技术、医药科学与生物医学技术。

2、高新技术产业的概念与特点

(1)概念:高新技术产业是建立在新的科学技术基础上的新兴产业,是以电子和信息类产业为“龙头”的产业,产品的科技含量很高,具有“高、精、尖”的特点。

(2)高新技术产业的特点:

①从业人员中,科技人员所占的比重大。

②销售收入中,用于研究与开发的费用比例大。

③产品更新换代快。

四、思考与辨析

多媒体呈现图片,试着说出下列这些图片展示的是哪类高新技术?

图片1 新能源技术

图片2 现代农业技术

图片3 航空航天技术

图片4 生物医药技术

图片5 电子信息技术


五、了解中关村

1、呈现图片:中国的硅谷——中关村科技园

2、 阅读课本P107阅读材料《我国首个高新技术产业开发区──中关村》,理解我国发展高新技术产业的决定性因素。

3、思考与归纳:我国首个高新技术产业开发区—中关村的优越条件

(1)地理位置优越,交通便利。

(2)科技力量雄厚,人才众多。

(3)工业基础好。发展高新技术产业决定性因素:科技和人才。


六、我国高新技术产业的分布特点及区域特色

读图分析

1、我国高科技术产业的布局如何?

高新技术产业要求布局在:技术发达知识密集人才聚集的区域。

2、我国高新技术开发区的分布特点:

多依附大中城市,东部密集中西部稀疏。

3、找出我国高新技术中心主要集中的三个地区:

环渤海、长三角、珠三角

4、结论:我国高新技术产业的分布特点及区域特色:

我国高新技术产业开发区多依附于大城市,呈现出大分散、小集中的分布特点。

--沿海地区以智力资源和技术力量为依托,侧重 科技园区型 高新技术产业;

--沿边地区依靠国家的开放政策和沿边的地理优势,开发 以贸易导向型 的产业;

--内地依靠优势资源和工业基础,多发展 与军工 有密切关系的产业。


七、近年来我国高新技术产业发展基本情况

读图归纳

1、中国现已成为计算机、手机、软件制造大国。

2、中国高新技术产业总产值的增长特点是什么?


八、课堂小结


九、拓展延伸:视频《中国高新技术》


附:练习题


1.东部沿海工业地带是我国经济最发达的地带,由若干

工业基地组成。读右图,回答下列各题。

(1)图中我国四大工业基地分布在( C )

A.地势第二阶梯

B.陇海铁路沿线

C.东部沿海地区

D.长江沿海地带


(2)有关我国四大工业区的分布,判断正

确的是( A )

A.①是辽中南工业区

B.②是珠江三角洲工业区

C.③是京津唐工业区

D.④是长江三角洲工业区

?


2.我国最早建立的高新技术开发试验区是( C )

A. 陕西西安 B.上海浦东

C.北京中关村 D.广东深圳


3.发展和建立高新技术产业的最重要条件是( B )

A.自然资源丰富 B.科技力量雄厚

C.劳动力充足 D.位置优越