檸檬班軟件測試75期day02軟件測試的定義


1.什么是軟件

​ 軟件是計算機程序程序所用的數據 以及有關文檔資料的集合,軟件是入門開發出來的,開發者是程序員。大部分軟件的產生就是為了方便我們而產生的。

2.軟件的分類

​ 軟件分為2大類系統軟件與應用軟件。

系統軟件

​ 在我的理解就是一個系統中的各個軟件就是系統軟件,系統軟件相互合作構成系統。系統軟件也是生成,准備和執行其他程序所需要的一姐文件和程序。如操作系統Windows,數據庫SQL-Server,驅動程序(網卡,聲卡)。java語言系統編譯環境等。

軟件測試的對象是什么?

軟件的3要素

3.軟件的應用架構

C/S與B/S架構

cs架構

C/S: client- server:這種就是我們一定要安裝一一個客戶端才 能夠用的軟件,就叫C/S
缺點:每次更新,都需要更新服務端與客戶端,比如說超市收銀系統每次更新每台電腦都必須重
裝客戶端

bs架構

B/S: browser-server: 只需要一個瀏覽器, 就可以訪問服務的,就是B/S.
優點:只需要更新服務器就OK,不需要去更新瀏覽器。用戶主動性比較高。比如說天貓、淘寶。

提問: APP是什么架構的呢? --移動端CS === M/S-- mobile-server

4、軟件測試是什么

軟件測試的定義:

​ 使用人工和自動手段來運行或測試某個系統的過程,其目的在於檢驗它是否滿足規定的需求或弄清預期結果與實際結果之間的差別。

問題:淘寶購買東西的過程,是軟件測試么?

不是,因為我們不是可以去找問題而去使用

我們為什么要做軟件測試,它的目的什么?

1)軟件測試為了發現程序(軟件)存在的代碼或業務邏輯錯誤

判斷軟件測試能否可以實現正常的功能,比如登錄注冊功能,注冊而不能等錄那不是很尷尬。在不如是銀行轉賬的功能,那出現問題就很嚴重了

2)軟件測試為了提高用戶的體驗,檢驗產品是否符合用戶需求

測試就是為了提交用戶體驗

3)軟件測試為了為公司減少損失


5、軟件測試的分類--按照不同的角度維度

按測試技術划分
黑盒測試,白盒測試、灰盒測試
被測試對象是否運行划分
動態測試、靜態測試(文檔檢查、代碼走查)
按不同的測試於段划分
手工測試(點工) .自動化測試(工具+代碼) --高級
按測試包含的內容划分
功能測試,界面測試。安全測試,兼容性測試,易用性測試,性能測試
按測試階段划分-階段--流程
單元測試、集成測試、系統測試、驗收測試,a測試,β測試
其他測試
回歸測試、冒煙測試。探索性測試/自由測試(測試思維)

ps 以上測試,測試內容上有可能會從疊,只是叫法不同

按測試技術划分

黑盒測試詳解

	黑盒測試不考慮程序內部結構和邏輯結構,主要是用來測試系統的功能是否滿足需求規格說明書。 一般會有一個輸入值,一個輸入值,和期望值做比較。黑盒測試也稱功能測試,它是通過測試來檢測每個功能是否都能正常使用。在測試中,把程序看作一個不能打開的黑盒子,在完全不考慮程序內部結構和內部特性的情況下,在程序接口進行測試,它只檢查程序功能是否按照需求規格說明書的規定正常使用,程序是否能適當地接收輸入數據而產生正確的輸出信息。黑盒測試着眼於程序外部結構,不考慮內部邏輯結構,主要針對軟件界面和軟件功能進行測試。可以得到軟件的實際使用效果報告。
	如電視遙控器,就是一個標准的黑盒測試

白盒測試

	主要是對代碼級的測試,針對程序內部邏輯構,測試手段有語句覆蓋,判定覆蓋,條件覆蓋,路徑覆蓋,條件,組合覆蓋,對我們測試人員要求高需要看懂代碼並且會寫測試腳本

灰盒測試

	灰盒測試是介於白盒測試和黑盒測試之間的測試,灰盒測試既保證了黑盒的關注點,又掌控了白盒的內部結構,但不會對內部程序和運作做詳細的了解,灰盒測試結合了白盒測試和黑盒測試的要素。接口測試算是灰盒測試

被測試對象是否運行划分

動態測試

	動態測試(dynamic testing),是指實際的運行被測軟件,輸入相應的測試數據,檢查輸出結果是否符合預期的過程 比如登錄qq

靜態測試

	靜態測試(static testing),指的是不實際的執行被測軟件,只是靜態的檢查程序代碼、界面、或者文檔中可能存在的錯誤。比如測試界面根本不需要執行直接看就行

按不同的測試於段划分

手工測試(點工)

	執行測試的是人,根據自己主觀意識測試,優點是可以靈活的改變測試操作及環境。

自動化測試(工具+代碼)

	自動化測試是測試人員通過腳本驅動測試工具,自動的完成測試,還需人為的配合。另外還可以通過第三方的工具,對比被測對象進行測試。自動化測試的優點是可以高效的實現人工無法實現的操作(比如測試網站的並發量)

按測試包含的內容划分

功能測試

點點點咯,看輸入和輸出

界面測試

眼睛看對文檔看看和文檔有沒差別

安全測試

一般有專業的人去做比如滲透工程師
fd抓包就是嚴重的安全問題

兼容性測試

軟件兼容性測試就是看看創造的軟件是不是可以在其他環境可以完美運行,比如人常說的ie游覽器兼容問題,

為什么要進行軟件兼容性測試
	用戶使用的環境是不同的所以我們盡量去做,避免給用戶帶來不好的體驗,比如玩着游戲忽然閃退換誰也不開心對吧
什么時候開始軟件兼容性測試
	當build已經相對穩定的時候就進行兼容性測試

易用性測試

易用性測試是指用戶使用軟件時是否感覺方便,比如是否最多點擊鼠標三次就可以達到用戶的目的。易用性和可用性存在一定的區別,可用性是指是否可以使用,而易用性是指是否方便使用。

比如密碼錯誤的提示框

性能測試

性能測試主要分類
負載測試、壓力測試、並發測試、基准測試、穩定性測試、可恢復性測試。
后面詳細講解 對測試人員要求高

按測試階段划分

單元測試

對於單元測試中單元的含義,一般來說,要根據實際情況去判定其具體含義,如C語言中單元指一個函數,Java里單元指一個類,圖形化的軟件中可以指一個窗口或一個菜單等。總的來說,單元就是人為規定的最小的被測功能模塊。單元測試是在軟件開發過程中要進行的最低級別的測試活動,軟件的獨立單元將在與程序的其他部分相隔離的情況下進行測試。當然,在具體的測試實現中,也可能對應的是多個程序文件中的一組函數。----------就是看某一個功能實現代碼 對測試人員要求高

集成測試

集成測試,也叫組裝測試或聯合測試。在單元測試的基礎上,將所有模塊按照設計要求(如根據結構圖)組裝成為子系統或系統,進行集成測試。 [1] 
實踐表明,一些模塊雖然能夠單獨地工作,但並不能保證連接起來也能正常的工作。一些局部反映不出來的問題,在全局上很可能暴露出來。


實際舉例待定

系統測試

系統測試,英文是System Testing。是對整個系統的測試,將硬件、軟件、操作人員看作一個整體,檢驗它是否有不符合系統說明書的地方。這種測試可以發現系統分析和設計中的錯誤。如安全測試是測試安全措施是否完善,能不能保證系統不受非法侵入。再例如,壓力測試是測試系統在正常數據量以及超負荷量(如多個用戶同時存取) 等情況下是否還能正常地工作。以上是百度百科的說法
在我的理解就是測試人員多方面進行測試不單單就看功能 ,還有看界面。壓力安全

驗收測試

在我的印象中就是我們開發完成,他們在測試環境聯調好了,他們說沒問題 於是我們測試就進行全面回歸驗收測試避免在上線后出現bug產生不好的體驗。

a測試

	α測試(內測):Alpha測試模擬實際操作環境下驗收測試,如刪檔內測試,軟件只是初步完成的產品,bug可能較多,不會進行上線提供用戶訪問。比如小米系統內測版,王者榮耀內測

β測試

β測試(公測):Beta測試系統已經通過內部測試,大部分錯誤已經修復,即將正式發布,在多個真實環境下發布,如不刪檔公測。
對比α版本已經有了較大改進,但仍可能存在一些bug,需要大規模測試,例如DNF公司更新一個地圖,提供公測免費下載,由專業游戲玩家進行游戲結果反饋,開發者再進行修復。

其他測試

回歸測試

在現在的生產環境,軟件迭代更新加快,所以bug出現了幾率大大增加,每次開發修完一個bug我們都要對主要功能在進行測試一遍,畢竟開發修一個bug出現多個bug也不是不可能出現。特別注意的是驗證當前bug的時候我們不要用相同的測試數據避免殺蟲劑效應,在最后上線的時候我們要全部用例在回歸測試一遍,盡量避免給用戶帶來不好的用戶體驗,所以軟件發版的時候是我們最忙的時候

冒煙測試

最初由硬件測試那里來的,在我們這就是主要功能都掛了就不需要繼續下去了。

探索性測試/自由測試(測試思維)

隨機測試也稱為探索測試。一般都是由有經驗的測試人員自由發輝

6、筆試面試題整理

為什么需要軟件測試?

	為公司節約錢,測試和運維都是為了保證公司不受到損失,比如拼多多優惠價事件。這就是做為測試最大的作用,所以需要軟件測試

為什么選擇軟件測試行業?

·簡單,有錢途,國內越來越重視測試人員

為什么不讓開發自己做測試?

	開發雖然可以簡單自己測試,但是專業度絕對沒我們高。而且測試很費時間。綜合考慮公司是需要專業的測試人員的。

什么是軟件測試?軟件測試的目的是什么?

	軟件測試就是測試軟件所有功能能否實現,軟件文檔是不是有問題,軟件數據穩定性這些,只要和用戶有關的我們都要測試

軟件測試分類都有哪些?

同上,不同分類叫法不同

什么是黑盒測試?白盒測試?區別是什么?

黑盒 功能測試
白黑 代碼級別
區別 需要測試人員掌握的技術程度不一樣


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM