2010-03-12 54 views
1

你們有沒有關於如何測試我的應用程序的跨版本兼容性的任何信息/想法?我正在用當前的「HEAD」版本測試這些對象的序列化。但我需要等待我的集成測試,看看我是否打破了任何跨版本。編寫junit測試以涵蓋交叉版本序列化

我猜我需要存儲從我的磁盤上的某個地方上次發佈的版本序列化的對象,我可以想象這種系統可能會如何工作,但我不知道是否有人已經做到了。

回答

0

從來沒那麼做,但我會用下面的辦法:

  • 有類的兩個版本測試不在正常類路徑。
  • 使用自定義類加載器一個版本
  • 連載中放入一個或多個實例爲一個字符串或文件或任何
  • 使用定製的ClassLoader的另一個實例,加載另一個版本。
  • 反序列化的東西。
  • 斷言所有必需的屬性。
+0

聽起來很不錯,有些問題你也許能夠找到創造性的折扣: 1.只有當兩個項目都在我的工作區和特定位置檢出時,junit測試纔會起作用 2.我需要編寫項目及其前身的一些映射 – ekeren 2010-03-12 20:07:07

+0

爲了檢查這兩個版本,我會考慮使用ant。添加與svn的接口存在。可能也適用於其他系統。 CI系統也可能有幫助(團隊城市)。對不起,我不明白你的第二點。 – 2010-03-12 22:44:47