精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

對前端質量保障的思考

開發 前端
我們時時在踩坑,有時也忍不住埋怨前人給我們留下了無數的坑,可回頭想想,自己是不是也在挖坑等別人踩...
我們時時在踩坑,有時也忍不住埋怨前人給我們留下了無數的坑,可回頭想想,自己是不是也在挖坑等別人踩...

上次聽 趙海平 的講座,他提到 Facebook 沒有測試人員,以前和現在都沒有,以后也不打算有。還提到上線之后就開發者坐在系統前等著,只要有bug,系統能夠在五分鐘之內檢測到,并提供快捷方式修復。我驚嘆的是他們能夠在五分鐘之內監控到所有的問題,實時回饋并及時修復。

對前端質量保障的思考

當然在探討質量保障這個話題前,我們需要明確幾個關鍵點:編碼前、提交代碼、測試、上線、回滾、上線后。針對這幾個點,下面我談一談我的看法。

一、編碼前

來阿里之前在百度實習過三個月,實習期間印象最深的交流是參與編碼規范討論,當時我還呼呼的整理了兩份文檔:前端編碼規范之JavaScript,前端編碼規范之CSS。后來也看到團隊在各種工具上添加控制和提示,如 Sublime Text 添加 jslint 配置,項目目錄下添加 .jslint 配置,打包工具提示代碼的不規范,強制修復等等。

上面提到的代碼規范主要是代碼展現層面的規范,他可以讓團隊寫出來的代碼就跟一個模子刻出來似的,結構、命名、函數體大小等等很接近,看著很舒服。舉幾個例子說明他的重要性。

1. 統一使用 UTF8 編碼

我平時開發都是使用的 UTF8 編碼。有次從倉庫拉下來發現很多文件都是 GBK 編碼,修改時一個文件忘記轉換編碼,提交發現 錕斤拷 出來了。

2. TAB 縮進

我比較喜歡使用四個空格作為 TAB 縮進。一次多人開發的時,發現同事的代碼是兩個空格的縮進,結果,我改成了四個空格提交之后,又被改回來兩個空格,然后我接著改回去…

3. 加不加分號

以前寫過一篇文章,談了下自己對分號的看法:Javascript分號,加還是不加?,我的回答是加但非必須。

代碼的規范,對程序本身的意義并不是很大,他不會作用在程序的邏輯上,作用點在于團隊合作。一個項目可能是多人開發,也可能是今天我開發,明天托付給你。如果兩個人在編碼習慣上的差異很大,就會偏頭痛…有一點需要特別提出來,就是寫注釋!某次排查一個線上問題,找到了問題所在的文件,但是文件中的邏輯實在是太過復雜,四五百行代碼僅三行注釋,眼睛都看花了。其實只要在大段的代碼前加幾句注釋,說明本段代碼的大意,在排查定位問題的時候就可以忽略一部分代碼塊,可以為修復線上bug爭取不少時間。

二、提交代碼

這部分特指工具。可以說過了工具這一道關卡,代碼基本就獲得自由,bug 也就開始橫飛了。目前工具可以為我們做的事情:

1. 檢測

現在并沒有做 jslint 之類的配置,所以代碼的展示是沒怎么規范的。
編碼應該統一為 UTF-8 格式,如果不是這種格式,工具應該有所提示。
代碼塊過長提示,一個函數不應該寫到幾百上千行,拆分代碼剛開始是辛苦,一旦后續復用的時候,就會很爽很爽了(當然,剛開始編碼的時候就應該考慮一個函數的顆粒度控制)。

更重要的是對語法的檢測,我們可能把 document 拼寫成了 doucment,甚至使用 for in 來遍歷一個數組,這種問題時而出現,工具是否考慮幫助我們處理掉一些簡單的愚蠢的錯誤。

2. 壓縮

壓縮代碼的時候,我踩過坑:gulp打包壓縮css遇到的坑,我相信很多人都認識 grunt 和 gulp,但是一定鮮有人自己配置過這些東西,并投入到項目中。

代碼的壓縮,一方面可以減少線上流量,一方面也是出于安全的考慮。壓縮后的代碼線上報錯很難定位到準確的位置,有些問題只能在用戶的電腦上復現,“代理到本地這個法子”遠程操作的時候是不靠譜的。壓縮不僅僅應該把代碼縮短,還要考慮線上排查問題的難度。

在壓縮的時候可以考慮添加空行,將網頁錯誤定位范圍縮減到單個文件。也可以使用 sourceMap 之類的輔助方式。在這篇文章中有過一些討論。

3. 合并

很多事情,別人不考慮,工具就得考慮。

這里有一個思考,HTTP2.0 支持多路復用,一個連接可以進行多次 HTTP 的傳輸,那以后的 sprite 圖、文件的合并等是不是也應該重新考慮了。文件的全部合并真的是最省資源的方式么?是否可以考慮更多的合并方案?

三、測試

趙海平 說,技術實踐中的三件套:功能 + 測試 + 監控。很多大公司的工程師,深諳功能開發之道,測試方面也能達到 60 分的水平,但是程序的監控上,做的很差,包括 Facebook 的程序員。三件套,對一個優秀的工程師來說,缺一不可。

這里要說的是程序開發三板斧的第二板,測試。

我們很自然地聯想到了QA,阿里有一大波的測試人員。寫完代碼提測,好像剩下的就只是測試同學找BUG,我們等著修BUG。前端的測試跟后端還不太一樣,邏輯可以測,但是 UI 效果、交互效果不好測,只能靠幾雙眼睛盯著看,幾個鼠標不停地點點點。。。

雖說邏輯可以通過寫測試用例進行測試,會去寫測試用例的人卻不多。我記得當時學習 AOP 編程的時候,給 ajax 添加了一些 mock 功能,可以在頁面上模擬請求測試效果(如jquery-mockjax)。
編寫測試用例確實可以解決很多的問題,但是如何培養編寫測試用例的習慣,如何更加便利的測試我們的測試用例,這又是一個值得思考的話題。

自動化工具一大缺點是很難捕獲到特定環境下的錯誤。據統計,不管你的代碼寫得多健壯,在一千個用戶下,總有那么一個用戶,因為瀏覽器安裝了插件、網絡問題等導致代碼報錯,再比如我們在做灰度測試的時候,讓用戶名首字母為 a-m 的用戶命中灰度時出現的錯誤等等,這些錯誤自動化測試工具是無法發現的。

所以我們要把 錯誤日志統計 靈活地使用起來,他能夠使你深入用戶,拿到最原始的錯誤信息。
四、上線

現在涉及到前端上線的,有多個地方(公司有很多發布系統):

TMS發布
aone2發布
gitlab發布
awp發布
etc.

gitlab發布通過域名嚴格區分測試、預發和線上環境,操作界限明確,出錯的概率還是很低的(這要求開發者對 git 命令的操作十分熟練),如果幾次 reset revert stash 之后便開始犯蒙,那出問題的概率就增大了。每次打下 tag 之前,我都會很仔細地 diff 下代碼,看看本次發布和上次發布之間做了哪些修改,確認這些修改點再 push tag。

aone2的發布,并不是每個人都用過,它的靠譜在于有三種發布方式:

  • 全網發布,半小時完成
  • 小淘寶環境灰度發布,兩小時完成
  • 分三次發布,小流量上線,一天完成

同時也提供了十分方便的回滾機制,只要擁有應用的權限,可以隨時回滾代碼,效率極高。

TMS 的發布,我覺得是問題最多的。首先,前端和運營都會擁有發布權限,運營喜歡“瞎搞”,部分頁面(如JSON輸出)并沒有提供頁面預覽,運營填完之后也不會跑到頁面查看效果,于是就出問題了。。TMS發布每次修改只發布一個文件,CDN 發布一個文件的速度是很快的,當你點擊發布的那個瞬間,整個同步就基本完成了。可是,當某個節點同步出錯,TMS 并沒有給出提示,這是第二個隱患。第三個點,TMS坑爹的沒有灰度,對一些重要的發布,沒有灰度就需要十分十分的謹慎,雖說出錯可以及時回滾,但萬一沒有看到隱性的錯誤,那就悲慘了。

五、回滾

沒人可以保證自己寫的東西絕對不出問題,因為有太多的環境因素是我們想也想不到的,比如最近某類控件在小淘寶環境下全掛了,試問,前端怎么會想到這是Nginx 的灰度系統出問題了,在灰度發布的時候文件沒有同步成功,導致整個灰度環境出錯。

所以,一定要給你的程序想一套快速回滾方案。尤其是在做 ABTest 的時候,新版的效果不好需要回滾到之前的狀態,這種事情經常有。

回滾需要注意兩點:

  • 要快。
  • 上一個狀態要保證無錯誤。

只要我們能夠保證發到線上的每一個版本都是穩定版,那回滾就是 0 風險的事情。

六、監控

程序開發三板斧的第三板,監控。前端對測試就不太重視,更不用提監控了。沒有監控就只能提心吊膽的過日子。

其實我們使用自動化工具測試、每天用肉眼頂著自己的頁面看,這些都屬于監控,但是深入到用戶的監控,我們做的太少!

七、小結

看到老大在群里發了幾條研發相關的紅線:

  1. 禁止代碼未經測試發布;
  2. 禁止代碼發布后不進行線上驗證;
  3. 禁止核心應用發布沒有對應的回滾方案。

毫無疑問,這些都是必須嚴格遵守的。規范會先把壞習慣壓住,進而被理解,最后被消化吸收。

前端質量保障之路,任重而道遠!

責任編輯:王雪燕 來源: 博客園
相關推薦

2022-08-01 07:38:29

代碼開發

2013-08-07 10:47:53

DBA成長

2022-12-05 11:29:14

2012-09-18 09:40:24

程序員職場職業

2022-05-19 09:01:14

ToB軟件體系

2022-03-07 08:14:27

并發分布式

2022-03-11 10:03:40

分布式鎖并發

2018-07-11 14:06:04

數據質量數據治理數據清洗

2009-06-08 14:54:11

產品綜合布線福祿克

2021-07-09 11:29:22

交易鏈路閑魚阿里云

2013-07-09 09:11:50

程序員

2016-12-05 18:54:53

Rexxar豆瓣

2010-08-04 13:44:06

2010-12-29 09:51:29

前端基礎框架

2023-11-28 12:20:01

大型直播S13

2015-10-26 10:32:01

前端優化工程化

2017-08-24 17:05:06

2021-01-05 10:32:12

系統代碼測試

2010-11-05 13:32:30

網絡應用質量上網行為管理

2020-10-12 10:00:11

前端react.jsjavascript
點贊
收藏

51CTO技術棧公眾號

国产精品成人99一区无码 | 久久69国产一区二区蜜臀| 最近2019年手机中文字幕| 亚洲熟女乱综合一区二区| 卡通欧美亚洲| 一区二区三区日韩精品视频| 青青成人在线| 亚洲男女视频在线观看| 天堂午夜影视日韩欧美一区二区| 久久av在线看| xxxx日本黄色| 日日天天久久| 日韩免费福利电影在线观看| 日韩在线第三页| 精精国产xxxx视频在线中文版| 国产欧美日本一区二区三区| 精品国产_亚洲人成在线| av中文在线观看| 蜜臀a∨国产成人精品| 午夜免费日韩视频| 欧美人妻一区二区| 欧美激情另类| 国产亚洲精品激情久久| 三级视频网站在线观看| 亚洲综合网狠久久| 91精品国产欧美一区二区成人| 黑人糟蹋人妻hd中文字幕| 免费网站在线观看人| 国产精品欧美一区喷水| 欧美综合77777色婷婷| 天天操天天干天天爱| 大桥未久av一区二区三区中文| 国产在线精品成人一区二区三区| 波多野结衣在线观看视频| 99成人在线| 久久久久久中文| 美女视频黄免费| 五月天激情综合网| 中文字幕亚洲欧美日韩在线不卡 | 成人3d精品动漫精品一二三| 亚洲欧美国内爽妇网| 粉嫩av懂色av蜜臀av分享| 91成人午夜| 精品久久人人做人人爽| 中文字幕在线国产| 国产一区二区三区亚洲| 日韩精品一区在线观看| 少妇性l交大片7724com| 视频精品国内| 欧美v日韩v国产v| 精品国产aⅴ一区二区三区东京热| 国产一区二区三区亚洲综合| 91精品欧美久久久久久动漫 | 三级精品视频| 亚洲天堂av女优| 免费看裸体网站| 国模吧精品视频| 色噜噜久久综合伊人一本| 久久成人小视频| 亚洲h色精品| 欧美贵妇videos办公室| 国产无套粉嫩白浆内谢| 一本色道精品久久一区二区三区| 精品久久久999| 91视频最新网址| 夜间精品视频| 国内精品视频久久| 亚洲天堂一区在线| 激情综合自拍| 57pao国产成人免费| 无码人妻丰满熟妇精品| 毛片一区二区三区| av免费观看久久| 亚洲av成人无码网天堂| 国产欧美一区二区精品性| 亚洲资源在线网| 日本动漫理论片在线观看网站| 午夜私人影院久久久久| 无码人妻丰满熟妇区毛片| 精品自拍视频| 亚洲精品一区二区三区在线观看| 精品久久久久久中文字幕人妻最新| 日韩久久视频| 欧美精品videossex性护士| 日韩一级在线视频 | 你懂的在线观看网站| 国产区精品区| 久久99久国产精品黄毛片入口| 丰满少妇乱子伦精品看片| 蜜臀91精品一区二区三区| 成人在线资源网址| 成人免费视频| 亚洲午夜在线视频| 成人性生交免费看| 麻豆成人入口| 精品国产自在精品国产浪潮| av大片免费在线观看| 久色婷婷小香蕉久久| 精品蜜桃一区二区三区| 国产调教视频在线观看| 色综合久久久久网| 日韩av成人网| 久久精品播放| 国产91在线播放| 亚洲黄色一级大片| 国产精品久久久爽爽爽麻豆色哟哟| 福利视频一二区| 国产一区二区三区免费观看在线| 亚洲天堂av综合网| 国产午夜福利片| 国内精品写真在线观看| 日韩欧美三级一区二区| 川上优av中文字幕一区二区| 欧美一区二区三区免费观看视频| 国产伦理片在线观看| 99综合视频| 国产v亚洲v天堂无码| 黄色网在线播放| 欧美日韩综合在线免费观看| 短视频在线观看| 亚洲三级色网| 国产精品高清一区二区三区| 成人区精品一区二区不卡| 欧美日韩一区中文字幕| 久久久久亚洲av成人无码电影| 亚洲人成毛片在线播放女女| 91九色在线观看| 韩国av网站在线| 欧美日韩精品一区二区天天拍小说 | 不卡av电影在线播放| 三级在线免费观看| 亚洲综合资源| 日韩有码在线播放| 97精品人妻一区二区三区在线| 国产三级一区二区三区| 成人黄色片视频| 亚洲视频分类| 日本高清不卡在线| 国产精品久久久久一区二区国产| 欧美日韩国产一区二区| 伊人网综合视频| 国产日韩专区| 欧美不卡在线一区二区三区| 欧美自拍电影| 中文字幕亚洲字幕| 一级欧美一级日韩| 综合激情成人伊人| 欧美激情第四页| 中文在线播放一区二区 | 亚洲xxxx天美| 午夜精品免费在线观看| 亚洲欧美在线不卡| 日韩精品一二三四| 色一情一区二区三区四区| 成人h在线观看| 日韩中文第一页| av在线亚洲天堂| 亚洲一区二区不卡免费| 在线看黄色的网站| 欧美专区在线| 婷婷精品国产一区二区三区日韩| 欧美成人福利| 久久97久久97精品免视看| 日本国产在线观看| 色网站国产精品| 久久精品在线观看视频| 国内不卡的二区三区中文字幕| 日本精品福利视频| 神马日本精品| 国产精品欧美一区二区| 在线三级电影| 日韩av中文在线| 在线亚洲欧美日韩| 亚洲一区二区四区蜜桃| 国产毛片久久久久久久| 国产自产高清不卡| 免费看黄在线看| 成人羞羞网站入口免费| 高清视频在线观看一区| 久久野战av| 久久影院免费观看| 五月婷婷久久久| 欧美另类久久久品| 你懂的国产视频| 国产精品不卡在线| 中文字幕第3页| 免费在线观看不卡| 国产成人永久免费视频| 精品国产91| 岛国视频一区免费观看| 国产国产一区| 午夜精品一区二区三区在线视| 亚乱亚乱亚洲乱妇| 日韩激情av在线免费观看| 国产精品日韩无码| 欧美视频中文在线看| 亚洲少妇xxx| 久久久三级国产网站| 日本少妇xxx| 蜜臀av性久久久久蜜臀aⅴ四虎| 草草视频在线免费观看| 99热国内精品永久免费观看| 久久天堂国产精品| 91精品久久久久久综合五月天 | 国产又粗又长又大视频| 狠狠干狠狠久久| 国产高清在线免费观看| 日本一区二区三区dvd视频在线| 韩国三级视频在线观看| 免费一级片91| 久久精品一区二| 99riav1国产精品视频| 永久免费网站视频在线观看| 国产伦精品一区二区三区千人斩 | 亚洲最大视频网| 麻豆国产欧美日韩综合精品二区 | 免费一级特黄特色大片| 亚洲人成网站影音先锋播放| 免费一级特黄3大片视频| 91麻豆国产香蕉久久精品| 亚洲欧美高清在线| 国产黄色精品视频| 午夜视频在线网站| 久久国产生活片100| 国产三级日本三级在线播放| 国产精品女主播一区二区三区| 国产www免费| 国产精品啊啊啊| 97在线免费视频观看| 综合精品一区| 欧美精品一区二区性色a+v| 久久社区一区| 一区一区视频| 91tv官网精品成人亚洲| 警花观音坐莲激情销魂小说| 欧美一区高清| 最新av网址在线观看| 在线成人直播| 91精品国产毛片武则天| 99久久精品费精品国产| 成年人黄色在线观看| 天天天综合网| 久久国产精品免费观看| 午夜日本精品| 国产成人永久免费视频| 亚洲三级影院| 浮妇高潮喷白浆视频| 久久xxxx| 污片在线免费看| 久久99精品久久久| 亚洲精品免费一区亚洲精品免费精品一区 | 欧美xxxx中国| 好吊色这里只有精品| 午夜天堂精品久久久久| 农民人伦一区二区三区| 国产日韩1区| 妓院一钑片免看黄大片| 激情综合五月婷婷| 亚洲欧美日韩中文字幕在线观看| 成人晚上爱看视频| 三级电影在线看| 国产精品青草久久| 精品99久久久久成人网站免费| 午夜精品福利视频网站| 中文字幕在线播| 欧美日韩国产美女| 精品久久国产视频| 精品亚洲va在线va天堂资源站| www.久久热.com| 久热精品在线视频| 蜜桃视频www网站在线观看| 国产精品久久久久久久久久小说| 爱情电影网av一区二区| 激情欧美一区二区三区中文字幕| 精品国产一区二区三区香蕉沈先生 | 国产精品狼人色视频一区| 中文字幕综合| 久久av一区二区| 色综合久久一区二区三区| 国产青草视频在线观看| 欧美专区18| 亚洲成人福利视频| 国产欧美综合在线观看第十页| 97人人模人人爽人人少妇| 五十路在线视频| 亚洲一品av免费观看| sm国产在线调教视频| 91精品国产色综合久久不卡98口| 久久女人天堂| 久久精品女人的天堂av| 香蕉av一区二区| 成人在线观看a| 国产aⅴ综合色| 日本乱子伦xxxx| 午夜精品影院在线观看| 一级特黄特色的免费大片视频| 日韩激情视频在线播放| 91精选在线| 国产免费成人av| 一区二区小说| 欧美国产综合在线| 韩国v欧美v日本v亚洲v| 青青草视频成人| 亚洲午夜在线视频| 国产农村老头老太视频| 一区二区欧美激情| 亚洲风情在线资源| 国产精品免费观看高清| 亚洲乱码精品| 午夜精品中文字幕| 久久久美女艺术照精彩视频福利播放| 精国产品一区二区三区a片| 欧美电影一区二区| 999国产在线视频| 国产91在线播放精品91| 婷婷成人综合| 欧美深夜福利视频| 成人综合婷婷国产精品久久 | 久久一区二区三区电影| 18禁男女爽爽爽午夜网站免费| 成人免费看黄yyy456| 亚洲欧美一区二区三区四区五区| 欧美日韩一区二区欧美激情| 国产一级二级三级在线观看| 欧美一性一乱一交一视频| 欧美91在线| 精品这里只有精品| 成人免费看黄yyy456| 中文字幕第28页| 精品国产乱码久久久久久蜜臀 | 无码一区二区三区视频| 中文字幕成人在线视频| 欧美激情综合五月色丁香| 天天综合久久综合| 国产一区二区三区欧美| 台湾佬中文娱乐久久久| 日本一区免费在线观看| 日韩电影在线看| 99久久久无码国产精品衣服| 欧洲精品一区二区| 9色在线观看| 91久久国产婷婷一区二区| 久久精品亚洲欧美日韩精品中文字幕| 色一情一区二区三区| 自拍偷拍亚洲欧美日韩| 亚洲h视频在线观看| 久久露脸国产精品| 青青久久av| 99视频在线免费| 国产精品久久久久久久久久齐齐| 97超碰色婷婷| 视频一区中文| 在线观看av网页| 亚洲精品你懂的| 国产激情无套内精对白视频| 欧美日韩国产第一页| 精品中国亚洲| 色一情一乱一伦一区二区三区日本| 国产欧美一区二区三区在线老狼| 亚洲天堂一二三| 久久99国产精品自在自在app| 久久人人爽人人爽人人片av不| 97成人在线观看视频| 欧美国产在线观看| 国产黄a三级三级三级| 久久久爽爽爽美女图片| 中文字幕精品影院| www.国产视频.com| 亚洲图片欧美视频| 国产精品一区在线看| 91天堂在线观看| 99热免费精品| 疯狂撞击丝袜人妻| 亚洲激情视频网站| 国产精品原创视频| 日韩中文字幕在线免费| 国产欧美精品一区二区三区四区| 性一交一乱一乱一视频| 91国产视频在线| 欧美独立站高清久久| 中文字幕免费高清视频| 欧美午夜精品理论片a级按摩| 中文字幕资源网在线观看| 免费在线成人av| 国产制服丝袜一区| 日本中文字幕第一页| 色综合91久久精品中文字幕 | 亚洲精品中文字幕乱码三区不卡| 国产成人在线色| 中文字幕xxxx| 欧美精品电影在线| 久久精品国产www456c0m| 五十路六十路七十路熟婆| 欧美日韩国产在线播放网站| av2020不卡| 中文字幕一区二区三区四区五区六区 | 欧美性生交xxxxx久久久| 黄色动漫在线| 日本a级片久久久| 成人性生交大合|