測試- 就從這兒起步

DrewBetter發表於2019-06-06

 

首先談談測試

  測試 顧名思義 就是測試一樣東西(Web網站,App軟體),保證這東西儘可能的少bug,以避免上線之後達不到理想的效果,從而被客戶投訴。

關於整個專案的流程,課件裡面都有介紹到。那我根據自己實際的工作來介紹一下。

一個常規的軟體開發流程

 需求階段:

一個軟體,從0到1 或者是 已經上線了有客戶用著用著反饋說想加個功能,產品瞭解到這是個需求,可以做。

之後,一般會是由 產品 組織專案的相關成員(運營,設計,後端 和 前端, 測試 ) 進行開會,這就是需求評審會議。

會議結束之後, 會確定需求。具體到需求有什麼功能,開發同能不能實現。可以做到什麼樣子。 和設計稿什麼時候可以產出。

一些名詞:

PM 產品經理

PD 產品設計師

PRD  需求文件

 

設計階段:

到了設計階段,一般由設計組織專案成員開會, 進行互動稿的處理和專案的排期,這就是互動評審會議。

會議結束之後,會確實具體的設計稿。 前端同學再具體和設計師確認一些細節點 (主要是面向客戶的介面)。

時間確認好,什麼時候上線 ,開發需要幾天,測試需要幾天。

一些名詞:

Demo   互動稿

 

用例評審階段:

測試同學根據前面兩個會議後,整理出測試用例,儘可能的覆蓋全面,以保證專案上線的安全。 這個會議的成員一般有開發同學,產品和設計。

會議結束後: 更加保證了專案的進度和穩定性。中間主要是測試同學和開發同學確認功能點和相關的細節。

Case  用例

開發和測試階段:

開發完之後會通知提測 ,  大型的專案的會有一個提測郵件,小專案的話直接在群裡通知,發群公告。告知測試同學在什麼環境下測試。

環境一般分為: 測試環境,生產環境,日常環境 。

測試環境:就是和生產環境區分開來,需要相關的環境配置和搭建,一般開發同學都搭建好的,測試同學繫結hosts就可以用了

生產環境:就是線上環境,釋出到客戶去使用的環境,也就是我們常說的專案上線。這個階段意味著專案完成啦~

日常環境:這個環境接觸的比較少,用於一些日常的需求,或者臨時改個線上的小bug使用到。一般是由開發同學和產品同學處理,小需求和小bug開發或修復後開發通知產品驗收即可。

上線階段:

開發修復好bug,測試同學驗收。通知專案相關成員,可以上線啦~ 。一般會先在測試環境全部迴歸一遍,確保功能點。然後上線之後再回歸一遍,專案就完成啦

上線流程。  後端先上線,然後前端同學告知前端版本號,再上線。所以測試同學線上上環境時 要注意檢視前端版本號對不對再驗證。

好的,上面我們站在整個專案的流程去了解其中的一二三。現在我們應該十分清楚了測試應該幹什麼了。

 

Review  (檢閱,回顧,複審)

  1. 瞭解軟體開發的流程與測試的工作流程
  2. 瞭解專案成員和自己的具體工作內容

 

那我們正式開始學習吧

 

第一部分- 基礎知識: 

要掌握測試思維和測試方法,參考課件。 在這一部分裡面我們要養成測試的思維 ,通俗點說 就是專業找茬。

我上網找了一下 這篇文章總結的比較好

https://blog.csdn.net/u014745194/article/details/79919756

 

Review

  1. 可以做到看到杯子或者隨便一樣東西,隨時能說出它們的測試點
  2. 可以寫出一個比較好的,比較全面的測試用例
  3. 掌握測試常用的幾種方法,比如:等價類,邊界值,因果圖,等等

 

第二部分-網路知識:

課件裡面的有點不太清楚,請參考以下連結:

http://www.ruanyifeng.com/blog/2012/05/internet_protocol_suite_part_i.html 

阮一峰大神,講解的通俗易懂,分為一、二 兩篇。這裡面的知識點一定要明白,這是很重要的。

檢驗自己是否掌握了

  1. 就是能說出網際網路的工作是怎麼樣的
  2. 我們平時上網,計算機是怎麼通過網際網路連線到方方面面的人和物的。這其中的連線說出個一二三來

在網路知識裡面,你會聽到http。 是的,這也是個重點。要掌握請參考以下連結:

 HTTP知識:

https://juejin.im/post/5afad7f16fb9a07abf72ac30 

http://www.ruanyifeng.com/blog/2016/08/http.html

前端後端的互動 :

https://www.jianshu.com/p/6ad8f3d0927b

Review

  1. 掌握http4個常用的請求方法 put delte post get  ,對應的就是我們常常說的增刪改查。
  2. 明白前端的後端的互動方式,主要是清楚請求URL相關引數 ,會涉及到介面測試。 

 

瞭解掌握之後呢,就要具體的應用上,網際網路工作用的瀏覽器一般是谷歌的。  我們開啟谷歌瀏覽器,開啟開發者工具進行使用。

 

超完整的Chrome瀏覽器客戶端除錯大全:

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

  1. 會檢視網頁結構,和明白點選網頁的互動傳送的請求Url 也叫做介面
  2. 開發者工具的常用設定
  3. 清楚明白介面的 入參 和返回json的位置 ,以分析是否正確

 

Future:

後面我會結合實際的網站來進行測試。

會用到的工具:

抓包 :     Fiddler ,Charles,

瀏覽器:  Chrome

 

預備知識 :

抓包工作的原理與安裝使用

Fiddler :https://www.cnblogs.com/zhaoyanjun/p/7068905.html

Charles:http://blog.devtang.com/2015/11/14/charles-introduction/#%E5%B0%86-Charles-%E8%AE%BE%E7%BD%AE%E6%88%90%E7%B3%BB%E7%BB%9F%E4%BB%A3%E7%90%86

介面相關知識

 介面測試:  https://juejin.im/post/5b4c5518f265da0f6131fb20 

相關文章