自動化測試之java的job任務
java的單元測試中,經常寫單元測試方法,測試job任務。而這些job任務,對應電子商務等流水系統來說,比較常見。 它們常用的特點是:實現不同系統之間的數據庫的流向。執行此job,把系統A的數據庫執行到系統B的數據庫的表中。 中間會有方法進行相關的處理。比如以下是個單元測試,測試生成的job。
@Test public void testCreateSettlement() throws ParseException { //createSettlementTask.createSettlement(null); Calendar ca = Calendar.getInstance(); ca.add(Calendar.DAY_OF_MONTH, -17); SettlementResult res = createSettlementFacade.createSettlementOrder(ca.getTime()); System.out.println("res->"+res); } |
此提現job的作用是:把某個系統A的訂單,執行此job后,把數據處理后,插入到系統B后生成結算單。
那么這個是功能測試時,需要驗證系統A的訂單數據,是否都生成到了系統B的結算單呢。
首先需要準備各種訂單數據,生成不同的結算單。 手工測試的壓力太大了。
后來考慮用junit的單元自動化測試的方法實現。
@before public void before() { 執行此job之前的數據準備的封裝 } @test public void test() { equals(request,response) } @after public void after() { 執行此job之后的數據變化 } |
其實難點還是在于用例設計和數據準備這塊。怎么樣的用例可以作為一個場景。而且能覆蓋到提交的代碼的更新。