我們到底要怎樣才能保持測試資料不變。

2021-08-29 15:21:22 字數 1003 閱讀 9607

一. 資料不穩定,我們能否使用不穩定的資料來寫測試?

由於我們的測試環境是基於開發資料庫,所以資料經常有變化,尤其是統計功能,基本不能對其進行測試。

辦法一:我們使用spring-mock提供的事物來解決測試過程中出現的髒資料以及解決測試過程中會改變資料庫狀態。

問題一:由於使用spring-mock在做測試的時候需要準備大量資料,比如對乙個查詢進行測試,這個查詢關聯兩張表,就會出現如下場景:

對這兩張表進行準備資料,new 出很多vo,將關聯資訊寫在vo中,然後呼叫不同dao進行持久,之後測試目標**,如果得到相同結果測試通過。

這樣需要在onsetup方法中寫很多vo的初始化**。並且很多統計涉及的表並不止兩張。造成初始化的工作量很大,導致大家不喜歡寫測試。

方法二:就使用現有資料+spring-mock。這樣我們在插入、修改、刪除操作時使用spring_mock,統計或者查詢的時候使用資料庫中現有資料。

問題二:由於使用開發資料庫中的現有資料進行測試,導致開發資料庫中資料一旦更變就會出現測試跑不通的情況。程式設計師又要回來修改以前的測試**,而且是因為資料庫中資料變化導致錯誤。很影響程式設計師寫測試的積極性。導致大家又不寫測試了。

方法三:使用dbunit和spring-mock進行測試。dbunit負責保證測試時資料不變,spring-mock提供事物處理。

問題三:由於dbunit在團隊中普及度並不是很高,如果使用需要培訓。而且需要程式設計師自己去維護xml,雖然提供了匯出的介面和方法,但維護起來相對比較麻煩,而且在進行單元測試時需要插入的資料太多,導致測試效率低下(一張表的單錶維護大概要3倍以上的時間)。總之屬於很耗費資源而且成本偏高。並且一但表結構改動,相關的測試資料需要重新維護一次。

方法四:使用testdb+spring_mock,testdb保證本身資料不變化。培訓成本為0。

以上是在我們測試的時候所遇到的一些問題,不知道大家都是如何解決測試資料不變問題的。簡單總結過後發現自己心情好多,希望大家可以提供一些意見和方法。我們都是為了寫出健壯的**,正確的行為,獲得重構的勇氣。

加油!!!

我們怎樣才能學好資料分析(一)

很多人看到了資料分析行業的火爆發展之後,都想進入資料分析這個行業,但是資料分析這個高大上的職業是有很高的要求的,我們做資料分析需要學習很多的知識,同時還需要培養一些能力,只有做到了這些,我們才能夠做好資料分析這個工作。那麼我們怎樣才能學好資料分析呢?我們在這篇文章中給大家詳細的介紹一下。要想學好資料...

怎樣才能讓文字域的格式保持word的格式

在word裡面編輯好的格式文字貼上到文字框或者文字域,然後存入資料庫再讀取出來就沒有先前的格式了。怎麼才能讓資料保持在word中編排好的格式啊?我用的access資料庫,望高手幫助,謝謝,最好詳細點。百姓網用的什麼技術識別同一使用者?附個人分析 1.同樣的 裡的qq和手機,不同id會被識別為同一使用...

我們怎樣才能做到持久 高效的學習呢?

學習方法講了很多,聽的過程中,我們心潮澎湃,熱血沸騰,激情四射。我們悔不當初,痛定思痛之後,就決定要洗心革面,痛改前非,重新做人。而事後,我們卻將那些山盟海誓拋諸腦後,繼續走回了原來的老路。首先,學習方法上存在的問題,追本溯源還是個人生活 學習工作 思考習慣的問題。多年來養成的壞習慣,就像我們的影子...