Używanie Mockito do pisania przypadków testowych ATG

Czy ktoś ma pomysł na napisanie testu jednostkowego dla ATG za pomocą Mockito? Podczas goglingu natknąłem się na następujące dyskusje -Zautomatyzowane testy jednostkowe dla rozwoju ATG iWykorzystanie PowerMock do uzyskania jądra ATG w wynikach testów w NPE

Ale potrzebuję pomocy w konfiguracji Nucleus i innych zależności (DAS, DPS, DSS itp.) I przykładowej klasy testowej dla dropletu za pomocą Mockito.

Używamy ATG Dust, gdzie musimy ustawić wszystkie zależności. Zastanawiam się, czy możemy całkowicie zastąpić ATG Dust Mockito. Oto przykład pisania przypadków testowych -

Klasa bazowa do ustawienia jądra -
package com.ebiz.market.support;

import java.io.File;
import java.util.Arrays;
import atg.nucleus.NucleusTestUtils;
import atg.test.AtgDustCase;
import atg.test.util.FileUtil;

public class BaseTestCase extends AtgDustCase {
public atg.nucleus.Nucleus mNucleus = null;
private final String ATGHOME="C://ATG/ATG9.4//home";
private final String ATGHOMEPROPERTY = "atg.dynamo.home";

protected void setUp() throws Exception {
super.setUp();
String dynamoHome = System.getProperty(ATGHOMEPROPERTY);
if(dynamoHome == null)
System.setProperty(ATGHOMEPROPERTY, ATGHOME);
File configpath = NucleusTestUtils.getConfigpath(this.getClass(), this.getClass().getName(), true);
FileUtil.copyDirectory("src/test/resources/config/test/", configpath.getAbsolutePath(), Arrays.asList(new String [] {".svn"}));
copyConfigurationFiles(new String[]{"config"}, configpath.getAbsolutePath(), ".svn");
}

public File getConfigPath() {
  return NucleusTestUtils.getConfigpath(this.getClass(), this.getClass().getName(), true);
}
}
Pisanie przypadku testowego przez rozszerzenie klasy bazowej -
public class BizDropletTest extends BaseTestCase {
private BizDroplet bizDroplet;

@Before
public void setUp() throws Exception {
super.setUp();
mNucleus = NucleusTestUtils.startNucleusWithModules(new String[] { "DSS", "DPS", "DAFEAR" }, this.getClass(),
this.getClass().getName(), "com/ebiz/market/support/droplet/BizDroplet");
autoSuggestDroplet = (AutoSuggestDroplet) mNucleus.resolveName("com/ebiz/market/support/droplet/BizDroplet");
try {
bizDroplet.doStartService();
} catch (ServiceException e) {
fail(e.getMessage());
}
}

/**
Other methods
*/
}

Więc jak Mockito może sobie z tym poradzić? Ponownie, dla mnie celem jest całkowite zastąpienie ATG Dust Mockito, ponieważ ATG Dust zajmuje dużo czasu na uruchamianie testów z powodu ogromnych zależności.

Dzięki.

questionAnswers(1)

yourAnswerToTheQuestion