Внедрение значения Spring в mockito

Я пытаюсь написать тестовый класс для следующего метода

public class CustomServiceImpl implements CustomService {
    @Value("#{myProp['custom.url']}")
    private String url;
    @Autowire
    private DataService dataService;

Я использую введенное значение url в одном из методов класса. Чтобы проверить это, я написал класс junit

@RunWith(MockitoJUnitRunner.class)
@ContextConfiguration(locations = { "classpath:applicationContext-test.xml" })
public CustomServiceTest{
    private CustomService customService;
    @Mock
    private DataService dataService;
    @Before
    public void setup() {
        customService = new CustomServiceImpl();
        Setter.set(customService, "dataService", dataService);
    }    
    ...
}

public class Setter {
    public static void set(Object obj, String fieldName, Object value) throws Exception {
        Field field = obj.getClass().getDeclaredField(fieldName);
        field.setAccessible(true);
        field.set(obj, value);
    }
}

. В applicationContext-test.xml я загружаю файл свойств, используя

    <util:properties id="myProp" location="myProp.properties"/>

, но значение url не загружается в CustomService при запуске теста. Мне было интересно, есть ли способ сделать это.

Спасибо

20
задан javanna 9 February 2012 в 23:11
поделиться