0

我昨天參加考試,我注意到他們要求在訂購以下發生(我會把我認爲它的順序是這裏):系統測試的操作順序?

  1. 單元測試(總是寫單元測試第一!)
  2. 集成測試(後你有一些代碼,並將其與其他代碼/系統的工作原理)
  3. 驗證測試(讓您的數據保持一致的狀態,並確保沒有錯誤數據輸入)
  4. 用戶/驗收測試(這完全是關於用戶,否則我們爲什麼要首先構建一個系統?)

這是對的嗎?我個人認爲負載測試或數據庫調優最後應該放在那裏,但它並不在測試中。

+0

這將是正確的順序,是的,除了我不熟悉的「驗證測試」。這不是作爲其他測試的一部分完成的嗎(特別是單元測試和集成測試)? –

+0

@Rogério通過放置,我假設這意味着像前端(Javascript)/後端(REST或其他)驗證的輸入放入窗體中...但我不是100%的... – leeand00

+0

如果它是「所有關於用戶的」,那麼爲什麼驗收測試最後到來? – tonicsoft

回答

1

這個問題並沒有太大的意義。

首先,不同的人對你提到的幾乎所有的測試都有不同的定義。例如,在極限編程(XP)Acceptance Tests(雖然從用戶故事派生)與用戶測試或用戶驗收測試(UAT)無關。使用XP定義,驗收測試是指代碼在用戶附近的任何地方運行之前在構建代理上運行的自動化測試。另一方面,用戶驗收測試(UAT)通常是在建議的最終版本創建並部署到UAT環境後發生的手動過程。

正如已經在評論中指出的那樣,驗證測試並不是一個普遍接受的定義。集成測試對不同的人來說意味着不同的事情。對於某些人來說,它正在測試不同的流程/應用程序一起工作(例如,在UAT環境中)。對於其他人來說,它只是涉及更多的一個類的自動化測試,即不是單元測試。

另外,你是什麼意思的「秩序」?您是指測試寫入的順序,或者在將代碼發佈到野外和/或生產環境之前的順序?

無論如何,這個問題在現實世界中基本上是不相關的,因爲不同的過程適用於不同的團隊。例如,我自己會在任何單元測試之前總是寫一個驗收測試。在測試第一種方法之後,你總是在修改課程之前編寫單元測試,是嗎?那麼爲什麼不在修改整個系統之前編寫驗收測試?

如果「驗收測試」是指任何接近XP驗收測試定義的東西,那麼我認爲這是最後的結果。

這聽起來像是一種「考試問題」,只有在考試前的課程環境中才有意義。如果沒有所有這些信息(特別是每種測試的定義),就很難爲這個問題提供有用的答案。

+0

是的,在這個問題中,我認爲他們的意思是順序,在單個系統用例的情況下,這些順序是由哪些順序完成的......至少,這對我來說是這樣的...... – leeand00

0

而不是驗證測試,系統測試是正確的詞。數據庫測試是集成和系統測試的一部分。此外,負載測試將在系統和用戶驗收測試階段執行。

+0

我只是使用他們在測試中使用的措辭。它可能還沒有在10年內更新我猜測...因爲我記得以前參加過測試! – leeand00