首先談談測試
測試 顧名思義 就是測試一樣東西(Web網站,App軟體),保證這東西儘可能的少bug,以避免上線之後達不到理想的效果,從而被客戶投訴。
關於整個專案的流程,課件裡面都有介紹到。那我根據自己實際的工作來介紹一下。
一個常規的軟體開發流程
需求階段:
一個軟體,從0到1 或者是 已經上線了有客戶用著用著反饋說想加個功能,產品瞭解到這是個需求,可以做。
之後,一般會是由 產品 組織專案的相關成員(運營,設計,後端 和 前端, 測試 ) 進行開會,這就是需求評審會議。
會議結束之後, 會確定需求。具體到需求有什麼功能,開發同能不能實現。可以做到什麼樣子。 和設計稿什麼時候可以產出。
一些名詞:
PM 產品經理
PD 產品設計師
PRD 需求文件
設計階段:
到了設計階段,一般由設計組織專案成員開會, 進行互動稿的處理和專案的排期,這就是互動評審會議。
會議結束之後,會確實具體的設計稿。 前端同學再具體和設計師確認一些細節點 (主要是面向客戶的介面)。
時間確認好,什麼時候上線 ,開發需要幾天,測試需要幾天。
一些名詞:
Demo 互動稿
用例評審階段:
測試同學根據前面兩個會議後,整理出測試用例,儘可能的覆蓋全面,以保證專案上線的安全。 這個會議的成員一般有開發同學,產品和設計。
會議結束後: 更加保證了專案的進度和穩定性。中間主要是測試同學和開發同學確認功能點和相關的細節。
Case 用例
開發和測試階段:
開發完之後會通知提測 , 大型的專案的會有一個提測郵件,小專案的話直接在群裡通知,發群公告。告知測試同學在什麼環境下測試。
環境一般分為: 測試環境,生產環境,日常環境 。
測試環境:就是和生產環境區分開來,需要相關的環境配置和搭建,一般開發同學都搭建好的,測試同學繫結hosts就可以用了
生產環境:就是線上環境,釋出到客戶去使用的環境,也就是我們常說的專案上線。這個階段意味著專案完成啦~
日常環境:這個環境接觸的比較少,用於一些日常的需求,或者臨時改個線上的小bug使用到。一般是由開發同學和產品同學處理,小需求和小bug開發或修復後開發通知產品驗收即可。
上線階段:
開發修復好bug,測試同學驗收。通知專案相關成員,可以上線啦~ 。一般會先在測試環境全部迴歸一遍,確保功能點。然後上線之後再回歸一遍,專案就完成啦
上線流程。 後端先上線,然後前端同學告知前端版本號,再上線。所以測試同學線上上環境時 要注意檢視前端版本號對不對再驗證。
好的,上面我們站在整個專案的流程去了解其中的一二三。現在我們應該十分清楚了測試應該幹什麼了。
Review (檢閱,回顧,複審)
- 瞭解軟體開發的流程與測試的工作流程
- 瞭解專案成員和自己的具體工作內容
那我們正式開始學習吧
第一部分- 基礎知識:
要掌握測試思維和測試方法,參考課件。 在這一部分裡面我們要養成測試的思維 ,通俗點說 就是專業找茬。
我上網找了一下 這篇文章總結的比較好
https://blog.csdn.net/u014745194/article/details/79919756
Review
- 可以做到看到杯子或者隨便一樣東西,隨時能說出它們的測試點
- 可以寫出一個比較好的,比較全面的測試用例
- 掌握測試常用的幾種方法,比如:等價類,邊界值,因果圖,等等
第二部分-網路知識:
課件裡面的有點不太清楚,請參考以下連結:
http://www.ruanyifeng.com/blog/2012/05/internet_protocol_suite_part_i.html
阮一峰大神,講解的通俗易懂,分為一、二 兩篇。這裡面的知識點一定要明白,這是很重要的。
檢驗自己是否掌握了
- 就是能說出網際網路的工作是怎麼樣的
- 我們平時上網,計算機是怎麼通過網際網路連線到方方面面的人和物的。這其中的連線說出個一二三來
在網路知識裡面,你會聽到http。 是的,這也是個重點。要掌握請參考以下連結:
HTTP知識:
https://juejin.im/post/5afad7f16fb9a07abf72ac30
http://www.ruanyifeng.com/blog/2016/08/http.html
前端後端的互動 :
https://www.jianshu.com/p/6ad8f3d0927b
Review
- 掌握http4個常用的請求方法 put delte post get ,對應的就是我們常常說的增刪改查。
- 明白前端的後端的互動方式,主要是清楚請求URL相關引數 ,會涉及到介面測試。
瞭解掌握之後呢,就要具體的應用上,網際網路工作用的瀏覽器一般是谷歌的。 我們開啟谷歌瀏覽器,開啟開發者工具進行使用。
http://www.igeekbar.com/igeekbar/post/156.htm
我自己也整理了一下工作用到的知識
Elements
在這一頁,主要是確認前端版本, 和一些前端的佈局。
Console 控制檯
這個皮膚可以檢視錯誤資訊、列印除錯資訊(console.log())、寫一些測試指令碼,還可以當作Javascript API檢視用,詳細的功能在上面連結有找到
工作中一般用於檢視前端的JS報錯。
最重要的Network 網路
下面 預設的勾選可能不是以下樣子,請參考下圖的勾選上相關 。
1、清除快取:顧名思義,就是把每次產生的返回資料都清空掉,這樣保證每次測試的都是最新的釋出。也可以開啟Chrome的無痕視窗
2、篩選網路請求:這一欄有很多的型別,可以試試選擇其它的看相應請求的字尾是什麼。
3、請求頭:這一欄就是在前面學到的HTTP知識啦,現在應該可以看得明白了。
工作用到的有:
1、確定環境,在 網路地址那裡,一般測試環境是要繫結host的。
hosts作用:就是將一些常用的網址域名與其對應的IP地址建立一個關聯“資料庫”,當使用者在瀏覽器中輸入一個需要登入的網址時,系統會首先自動從Hosts檔案中尋找對應的IP地址,一旦找到,系統會立即開啟對應網頁,如果沒有找到,則系統會再將網址提交DNS域名解析伺服器進行IP地址的解析。
2、檢視介面的入參 和返回的正確性 參考下圖
這個介面是刪除操作,用到比較新的請求方法 DELETE 。我們具體分析一下這個介面,然後可以反演繹出介面文件裡面記錄這個介面是什麼樣子的。
1、請求URL 也叫介面。 Request URL : https://tuijian.taobao.com/ai/campaign/delete.json
2、Form Date。 這裡面就是介面請求的引數,相信這裡你明白了之前看的前端和後端的互動的意義了。
3、請求引數是 bizCode, campaignIdList, csrfID 我們不用管這些英文是什麼意思 ,我們只要知道它是幹嘛的就行。這裡的bizCode 是區分業務線,campaignIdList 是要刪除的東西的標識, csrfID 是隨機生成的一個標識,不重要。
總結:一個簡單的介面請求就是這樣子啦,每個介面不一樣,但裡面的位置是一樣,請求引數或多或少,具體看介面文件,下面看看請求返回
返回
我們來看下返回 :
因為這個介面是執行刪除操作返回是不會返回資料,只返回刪除成功 還是不成功。
我們點選切換到Preview 下 ,是一種格式化的json 就是好看一點
info. ok:true 這樣我們就知道 這個操作是順利完成啦
切換到Response 是以原生json格式返回。可以自己點選檢視一下,內容是和Preview 一樣的,只有是按json返回 一排
Review
- 會檢視網頁結構,和明白點選網頁的互動傳送的請求Url 也叫做介面
- 開發者工具的常用設定
- 清楚明白介面的 入參 和返回json的位置 ,以分析是否正確
Future:
後面我會結合實際的網站來進行測試。
會用到的工具:
抓包 : Fiddler ,Charles,
瀏覽器: Chrome
預備知識 :
抓包工作的原理與安裝使用
Fiddler :https://www.cnblogs.com/zhaoyanjun/p/7068905.html
介面相關知識