測試
請根據團隊項目中軟件的需求文檔、功能說明、系統設計和測試計划,寫出軟件的測試過程和測試結果,並回答下述問題。
-
在測試過程中總共發現了多少Bug?每個類別的Bug分別為多少個?
-
a.修復的bug;
- bug1:
修復前:授權界面通過點擊授權按鈕跳出是否允許授權框,此時背景應該為設置的背景 圖片,但是如果點擊“允許”太慢,后面背景就已經進入到記賬的主界面了。
修復后:修復前點擊“允許”后,是通過點擊用戶頭像來進入到記賬主界面的,由於反應時間 較快,這個過程並沒有顯示出來,導致背景直接進入到主界面。修復后是將原來通過點擊用戶 頭像進入主界面換成點擊文字“歡迎使用EASY記”進入主界面。 - bug2:
修復前:查詢界面的提示文字“選擇所要查詢的日期:”后面跟着當天的日期。
修復后:提示文字后面應該是空白的,不應該一開始就顯示日期。
- bug1:
-
b.不能重現的bug
添加記賬小程序后,第一次使用底部導航條進行頁面切換時,當從“主頁”切換到“記賬”或 者“查詢”頁面時,底部導航條上面,緊挨導航條部分,會有綠色長條閃現。之后進行切換則 正常切換,不會出現綠色長條。
-
c.這個產品就是這樣設計的,不是bug;
記賬界面點擊確認保存后,直接跳到主界面。在進行很多條賬單記錄時,有可能會忘記已經記 錄過,而重復記錄,所以需要直接跳轉到主界面進行查看。
-
d.沒有能力修復,將來也不打算修復;
標題欄名字“EASY記”在開發工具上是居中顯示的,但是在真機上測試時是顯示在左側的。
-
e.這個bug的確應該修復,但是沒有時間在這個版本修復,延遲到下一個版本修復。
- bug1:賬單信息應該存儲在數據庫中,而不是在本地緩存里,由於alpha階段尚未解決如何連 接到服務器使用數據庫,所以這個bug將延遲到bata階段修復。
- bug2:來自用戶的反饋,在查詢界面只列出了賬單的信息,沒有進行合計。由於考慮不充分, 這個問題我們將在bata階段解決它。
- bug3:主頁應該只有賬單詳情區域可以滾動,整個主頁不需要設置滾動。記賬界面是固定的幾 項內容布局可以直觀看完整,不需要通過滾動來完整查看。
-
-
場景測試(scenario testing),包括以下內容:
-
你預期不同的用戶會怎樣使用你的軟件?
我預期的用戶為所有需要和想要記賬的人。假設有一個人,他今天發工資啦,就上街給自己買了點東西,這時候他就想把自己今天花了多少錢,這個月工資收入了多少錢給記錄下來,免得到時候忘記了,都不知道錢花到哪里去了。這時候他就可以打開微信,點擊小程序應用,搜索EASY記,點擊搜索出的結果,進入EASY記,微信授權后,進入賬單顯示頁面。這時候就可以進行記錄他想要記錄的賬單了。點擊記賬圖標,進入記賬頁面,在支出頁面中,將他今天買了什么東西,花了多少錢,記錄下來,在收入頁面中,將他今天發的工資金額記錄下來。然后就可以在賬單顯示頁面中看到所記錄的賬單和月支出、月收入的金額了。也可以在查詢頁面中查詢他想要知道的賬單信息。或者點擊賬單記錄頁面中的某條信息進行賬單的修改或者刪除。
-
他們有什么需求和目標?
- 他們的需求:現在大多數人的個人財務管理意識都很薄弱,普遍呈現着一種現象——“啊,明明沒買什么,怎么錢都用光了”,所以他們需要通過記賬的方式來合理的管理他們自己的財務,曾經使用傳統的記賬本記賬,隨身攜帶着及時將每天的收支記錄下來,但是現在網絡發展迅速,生活節奏加快,每年的支付收入賬單絡繹不絕,傳統記賬已經滿足不了人們的需求,所以他們需要一款可以隨時、隨地、隨身進行記賬的、簡約的、以最清新的界面給用戶最舒適體驗的記賬小程序。
- 他們的目標:使用記賬小程序的用戶的目標一般都是希望可以將自己的每一天的賬目記錄下來,到月末的時候可以對本月的收入、支出情況一清二楚,不會出現記不清自己到底在什么地方花了錢,花了多少錢,自己每個月的收入是多少這樣的情況。可以通過使用記賬小程序使得自己的財務管理能夠清晰明了,不會出現糊塗賬的情況。
-
你的軟件提供的功能怎么組合起來滿足他們的需要?
- 記賬功能使得用戶可以將自己的每天的收入和支出情況記錄下來,這樣就不會出現有花錢,卻又不知道花在哪里了,有收入,卻又不知道這錢是從哪里來的情況了。
- 查詢功能可以幫助用戶查看用戶自己在哪天的花銷和收入情況,也可以讓用戶知道自己哪個月,哪年花了什么,收入了什么。這樣就不會出現自己想要知道自己把錢花在哪都找不到,自己前段時間的收入來源也無處可尋的情況。
- 賬單顯示界面可以讓用戶一眼就可以看到自己的收入、支出情況,還可以看到自己的當月到目前為止支出了多少錢,收入了多少錢,從而推斷出是否自己后面幾天要省着花呢。
- 賬單的編輯頁面可以對用戶記錄的賬單進行修改和刪除,就可以將用戶記錄錯誤的賬目進行修改或者刪除,以便保證賬單的正確性,這樣才能夠更好地實現用戶的需求和目標。
-
-
你們在什么樣的平台、硬件配置、瀏覽器類型等條件上對你們的軟件進行測試?——測試矩陣(test matrix)
測試項 監測點 預產期結果 小米4 vivo X9 vixo X5 vivo Y66 oppo R11s 微信授權界面 “微信授權”按鈕 獲取用戶微信頭像和微信昵稱 √ √ √ √ √ 賬單顯示頁面 “主頁”圖標 如果有記錄的賬目,就在該頁面顯示出對應的信息,並計算出到有記錄的最后一個當月日期的月支出、月收入 √ √ √ √ √ 記賬頁面 “記賬”圖標和“保存”按鈕 在該頁面記錄的收入支出信息可以保存成功,並顯示到賬單顯示界面中,且保存成功會跳轉到賬單顯示頁面 √ √ √ √ √ 查詢頁面 “查詢”圖標和日期選擇器 在該頁面中可以通過選擇不同的日期,月份,年份來查詢自己所要的賬單信息 √ √ √ √ √ 刪除頁面 “刪除”按鈕 從主頁中的某條賬單信息點擊后進行編輯頁面,點擊刪除按鈕可以將這條信息刪除,刪除成功后跳轉回主頁,主頁中就沒有這條信息了 √ √ √ √ √ 修改頁面 “保存”按鈕 從主頁中的某條賬單信息點擊后進行編輯頁面,對這條賬單信息進行修改之后點擊保存按鈕,保存成功后會跳轉回主頁中,就會看到修改后的賬單 √ √ √ √ √ -
非功能測試
- 性能指標(響應時間和吞吐量,需要給出截圖和測試實例以及結果)
- 系統資源監控(CPU、內存占用情況,需要給出截圖和測試實例以及結果)
- 壓力測試(不同並發用戶數,需要給出截圖和測試實例以及結果)
- 疲勞度測試(測試服務器持續運行的能力,需要給出截圖和測試實例以及結果)
- 安全測試(從三個角度來看,即保密性、可用性、完整性。需要給出截圖和測試實例以及結果)
- 參考
- http://www.cnblogs.com/freeton/archive/2013/05/31/3109815.html
- https://www.cnblogs.com/cnmenglang/p/6272762.html
- 吞吐量:http://www.cnblogs.com/fnng/archive/2012/06/29/2570558.html
- 並發用戶:http://www.cnblogs.com/fnng/archive/2012/06/29/2570558.html
- 響應時間:http://www.cnblogs.com/fnng/archive/2012/07/01/2571990.html
PS:因為我們的微信小程序沒有用到服務器,所以像是性能測試,壓力測試,疲勞度測試這些關於服務器的測試都不能夠進行測試。
序號 所完成的測試 系統所期望的性能指標 實際測試結果 差別分析 性能問題及其改進建議 001 系統資源監控 平均cpu占用低於15%,平均內存占用不超過180M 平均內存占用128.44M,cpu平均占比14.02% 測試使用了雲真機三星S8+和vivoX20A,以及微信開發工具自帶測試報告PRO6s機型。從測試數據可以看出不同手機cpu使用率和內存情況是不一樣的。三星S8+的cpu使用率接近於20%,內存使用情況175M,而vivo的CPU使用率接近於15%,內存使用情況165M。因為雲真機測試是對apk測試,我們用它來對小程序進行測試,從數據上看,當使用小程序和未使用小程序時微信的性能情況都是差不多的,也就是說小程序並沒有占用 一般都是cpu不夠用導致卡頓問題,耗時的js操作異步化,不要阻塞主線程。少用scroll-view,這個組件對性能影響實在太大,單純的只是需要一塊可滾動區域,用wxss+view。 002 安全測試—保密性 將用戶的數據信息保密,不被泄露 有保證用戶的個人信息不被泄露 每個用戶自己的信息存儲在用戶本地中,且每個用戶之間是不能夠獲取其他用戶的信息的。 微信小程序自身這個平台的安全性就比較高,它自身的一些語句就有規定好安全的用法,像是request網絡請求僅支持采用https。並且微信小程序是只能夠獲得用戶的微信昵稱,其他資料是不能夠獲取的,並且不允許跳轉到外部網站,不允許放鏈接,不允許相互之間跳轉。這在很大程度上保證了小程序的安全性。而且我們自己還可以部署網絡防火牆。 003 安全測試—可用性 保證微信小程序的所有能夠是可用的 我們的微信小程序所擁有的功能都可以使用 實際測試和預期的結果沒有多大的差別,可以正常使用。 微信小程序是應用在微信上的,而微信的安全性能本身就比較好,我們將我們的微信小程序放在微信上的,且微信小程序的規范也很大程度保護了小程序。我們按微信小程序的規范進行小程序的發開可以保證微信小程序的安全。 004 安全測試—完整性 保護數據的完整性和數據相關屬性的完整性 我們的微信小程序實現了完整性 微信小程序平台本身關於這方面就做得很好,像是網絡傳輸時使用的都是https協議的,這樣保證了小程序的安全,避免了小程序被通過不明鏈接攻擊,且微信小程序平台和微信之間交互信息時都有使用密鑰進行加密,且密鑰不會發放。 微信小程序平台本身就已經針對各個問題設置了相關的操作,在最大程度上保證在微信小程序平台上開發出的小程序可以抵御一定程度的攻擊。並且我們自己也可以為我們的小程序加上網絡防火牆。 系統資源監控:
-
vivoX20A機型


-
三星S8+機型


安全測試:

-
附加題:下列的附加題基於4個標准要求中,進一步細化了要求
測試項 基本要求 細化要求 分值 性能指標 響應時間和吞吐量 除了總的響應時間的測試,還需要有性能瓶頸的分析,需要指出軟件哪個模塊對響應時間有嚴重影響,可以從計算響應時間和I/O響應時間兩個部分考慮,模塊的粒度越小越集中越好,需要給出截圖和測試實例以及分析 5 系統資源監控 CPU、內存占用情況 與響應時間類似,需要給出哪個模塊占用CPU時間和內存最多,模塊的粒度越小越集中越好,需要給出截圖和測試實例以及分析 5 壓力測試 不同並發用戶數 需要給出相應的測試腳本 5 疲勞度測試 測試服務器持續運行的能力 計算從服務開啟的最長的運行時間,需要給出相應截圖,可以從系統日志中查看 3 安全測試 從三個角度來看,即保密性、可用性、完整性 保密性需要從數據保密性和用戶使用過程的保密性來看。保證軟件有一定的防御能力,可以針對保密性攻擊有抵抗能力。可用性指針對惡意攻擊有一定的抵抗能力保證服務可用和魯棒。完整性要求用戶數據不被篡改,操作間互不干擾,數據的一致性能夠得到一定程度上的保證。 5 系統資源監控:


從上圖可以看出記賬界面的CPU占用和內存使用情況都是最多,CPU占用最高可達42.5%,內存占用最高可達147M。因為記賬界面所需要進行的數據操作比較多,加載時間比較長,記賬需要輸入的選項較多,並且需要將其讀取並寫入到緩存中,這相對於其他界面只需要讀取所花的時間比較多。安全測試:
微信小程序在傳輸或者進行網絡請求時,使用的都是https協議的鏈接,使用了https協議的網頁或網址之類在傳輸過程中是進行了加密,整個頁面都是進行了加密的,這樣可以避免微信小程序的相關數據被泄露或者是被篡改。並且微信小程序是只能夠獲得用戶的微信昵稱和頭像,其他資料是不能夠獲取的,並且不允許跳轉到外部網站,不允許放鏈接,微信小程序之間是不允許相互跳轉的。這在很大程度上保證了小程序的安全性,避免跳轉到不明頁面,導致小程序被攻擊。 -
你認為你們團隊的軟件在什么條件下,就可以認定其已經足夠好,可以發布Alpha版本?——出口條件(exit criteria)
我認為我們團隊的軟件可以實現我們的記賬小程序——EASY記,可以在使用我們的記賬小程序的各個功能之前先實現微信授權功能,獲取用戶自己的微信頭像和微信昵稱;可以沒有錯誤的實現記賬功能,可以很順利地將我們的某日的支出或收入的賬單記錄下來;可以在有記賬記錄的情況下在賬單顯示頁面即主頁中將賬單信息顯示出來,並計算出當月的月支出和月收入;可以在有記賬記錄的情況下在查詢界面中查詢到自己想要查詢到的相關賬單信息,無論是日賬單,月賬單還是年賬單都是可以的;可以對記錄的某一條賬單信息進行修改或者是刪除,並將修改或者刪除后的結果重返回到賬單顯示界面即主頁中去。在實現以上條件的情況下,我們就可以認為自己的小程序已經足夠好,可以發布Alpha版本了。
參考
- 測試的計划及執行:
- 測試報告實例:
- 微信小程序/APP
- Jmerter性能測試:http://www.cnblogs.com/TankXiao/p/4045439.html
- DBMonster是一個生成隨機數據、用來測試SQL數據庫的壓力測試工具,詳見 http://dbmonster.kernelpanic.pl/。
- 更多的性能測試工具,可訪問 http://www.opensourcetesting.org/performance.php
發布
-
軟件發布的同時,在團隊博客上寫一個發布說明
- 列出這一版本的功能(在原有項目基礎上開發的列出新功能)

本版本擁有微信授權登錄記賬小程序的功能,微信授權后通過點擊為微信頭像下方的”歡迎使用EASY記!_” 文字進入記賬小程序的賬單顯示界面。我們可以通過點擊賬單顯示界面已有的賬單來進行賬單的修改和刪除,進入修改和刪除界面后,我們可以根據我們的需要進行相應的操作。我們可以通過點擊記賬圖標進入記賬頁面,進行記錄我們的日常收入和支出。我們可以點擊查詢的圖標進入查詢頁面進行賬單的查詢,可以查詢某日,某月,某年的賬單。-
以原有項目為基礎開發的,列出這一版本修復的缺陷
我們的項目是全新的項目,目前還沒有修復的缺陷。
-
對運行環境的要求
運行環境的要求:需要在手機上安裝有微信,並且要能夠使用微信小程序即用戶先需要將微信更新至iOS6.5.3版本或Android6.5.3版本及以上版本。
-
安裝方法
安裝方法一:用戶現在手機上下載微信,安裝好微信之后,通過微信上的應用——小程序進行搜索,搜索我們的記賬小程序——EASY記,點擊搜索出來的小程序進入EASY記。然后會出現微信授權頁面,微信授權后通過點擊為微信頭像下方的“歡迎使用EASY記!_” 文字進入EASY記的賬單顯示頁面。


微信授權后

安裝方式二:二維碼

-
描述系統已知的問題和限制
- 系統已知的問題在於因為我們沒有連接上數據庫,使得我們的記賬小程序使用的是本地緩存來記錄用戶輸入的賬單記錄。但是這就導致了一個問題,就是如果用戶僅僅是退出小程序的話,原來輸入的記錄都會在,但是如果用戶是將EASY記小程序刪除之后,再次搜索EASY記點擊進入並使用時,就會發現原來的數據沒有掉了。
- 系統已知的限制在於微信小程序必須是在微信中才能夠找到和使用的,其他平台就不可以了。並且在使用過程中,不能夠將小程序刪除掉,否則原來記錄的賬單信息就沒有了。
-
說明軟件的發布方式以及發布地址
- 軟件的發布方式:我們的記賬小程序——EASY記是通過微信公眾平台|小程序中的開發管理將我們的發布版本提交審核,在通過審核后,將審核通過的版本發布出來。
- 軟件的發布地址:我們的記賬小程序——EASY記是發布在微信的小程序中,可以在微信小程序應用中搜索到。

-
對於功能的描述除了文字以外,可以通過圖片、視頻等進行輔助說明。

參考
版本發布說明的實例: http://www.cnblogs.com/buaase/p/4954977.html
