Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
最近組內其他同學使用httprunner做接口自動化,之前沒有接觸過httprunner,發現httprunner相比pytest和unittest有自己的特點。
看到了以上這些有點,我也在項目中使用下httprunner,確實有它優雅的一面,但httprunner自帶的HTML格式的報告相對來說比較
簡單,表現為:測試結果維度展現有限、無法區分用例優先級、不方便查看錯誤信息等。
本打算自己折騰一番,把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選擇符歸拆分成四個主要類別,如下所示,性能依次降低。
對效率普遍認識是從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 {..}
想象我們有如下的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類名應描述它是什么而不是它像什么。
其實你應該也可以使用其他優質的選擇器。
雖然有一些排列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.位置優越
*請認真填寫需求信息,我們會在24小時內與您取得聯系。