2016-05-12 19 views
0

我正在構建CD管道。我正在計劃它的自動化測試部分。我打算做UI,WebService,Security,Perf測試。我有一個關於代碼結構的問題。因此,我計劃將測試與代碼放在同一個repo中,然後對核心測試框架分別進行回收。用於連續測試的代碼結構

回購產品

  • 產品代碼(項目)
  • 集成測試(項目)
  • 功能/端對端測試(項目)
    • UI測試(包)
    • WebSvc測試(Package)
    • 性能測試(包裝)
    • Sec.Tests(包)

回購測試核心

  • UI測試框架代碼(項目)
  • WebSvc測試框架代碼(項目)
  • 逆足測試框架代碼(Project)
  • Sec測試框架代碼(項目)

有沒有人看到這個結構的任何問題?任何其他想法?此外,我對集成測試和功能測試項目中發生的事情(例如,WebSvc測試可能是兩者的一部分)都有些模糊。驗收測試去哪裏(功能性或集成性)?如果有人能夠指出一些示例回購或關於此的文章,那將是非常好的。

感謝

+0

備註:我會假設*驗收測試*來自您的業務人員;因此你可能想讓他們的生活儘可能簡單。除此之外......我不確定SO是否是這樣一個廣泛問題的好地方。尤其是針對場外資源的問題絕對是堆棧溢出的「焦點話題」。所以不要驚訝,如果downvotes進來。 – GhostCat

+0

謝謝 - 你能解釋你說什麼時,讓他們的生活變得簡單嗎?你的意思是有自己的項目嗎? – user2666282

+0

我的意思是:如果您要求非IT人員爲IT項目做出重大貢獻(這就是「客戶驗收測試」的實質內容)......那麼只需瞭解他們的技能和需求即可。理想情況下,只與一個平臺達成交易,他們需要的所有工作都在那裏。沒有複雜的設置需要...這樣的東西。 – GhostCat

回答

3

我覺得這有些結構刺激性。

從所提出的結構中,我推斷你想構建自己的測試框架。這聽起來很腥,特別是當你想寫4個。

另一方面,您將它們全部放在同一個存儲庫中,因此它們似乎密切相關。再次:不一定是壞/錯,但真的出乎意料。

由於除了結構之外,我無法在您的問題中找到提示,這給出了具有獨立存儲庫的充分理由,因此我建議只使用一個,假設您的「testframeworks」只是測試您的實用程序主要項目。

基本規則是一起改變的東西應該放在一起(在一個存儲庫中)。其他一切都使開發真的很麻煩:更改A,安裝,更改B,運行,調試,重複而不是更改,運行,調試,重複

既然你提到你並不完全清楚,那麼我會推薦如下:

從一個單獨的項目開始。在該項目的測試目錄中寫入所有測試。觀察你是否遇到問題。如果這樣適應。您可能會遇到的事情,項目即觸發提取:

  • 測試運行緩慢,要分開運行
  • 測試需要部署的應用程序,所以他們應該在建立和安裝一切
  • 測試後運行在不同的模塊中需要訪問不應該存在於主要項目中的代碼,因此它最終可能會出現在具有測試支持代碼的模塊中
+0

謝謝Jens。首先,爲什麼你認爲它可以編寫4個框架(考慮到他們測試不同的東西)? 另外,我從你建議的代碼結構中得到的是這4個框架中的每一個都應該在他們自己的回購協議中進行 - 對嗎?但是當你說一個回購時,我有點困惑,因爲我想保持框架分離(因爲它們也需要測試其他項目)。 – user2666282

+0

4測試框架聽起來很腥,因爲a)有數百個框架。爲什麼寫一個新的? b)編寫1個框架是很多工作。你確定你可以處理4嗎?如果你要編寫4個獨立的框架,他們應該有自己的回購。除非他們密切相關。 –

+0

明白了 - 如果我通過框架傳達錯誤,我並不意味着Selenium(對於UI測試) - 這意味着我們需要的定製,以使它適用於我們的項目。它將成爲現有框架之上的一個層。如果您有任何其他建議,請告訴我。 – user2666282