В классе, для которого пишу тест, есть переменная:
@Value("${key}")
private String key;
которая получает значение из файла application.properties
Само приложение видит данное значение из application.properties
, но тесты не видят.
Тест не видит значение key, или сам файл application.properties
.
Вот код теста:
@SpringBootTest
@RunWith(SpringRunner.class)
public class CipherServiceTest {
private String decryptData;
private String encryptData;
private CipherService cipherService;
@Before
public void setUp() {
cipherService = new CipherServiceImpl();
decryptData = "1234567";
encryptData = "Ql1eURhFU";
}
@Test
public void encryptDataTest(){
assertThat(cipherService.encrypt(decryptData)).isNotEqualTo(decryptData);
}
@Test
public void decryptData(){
assertThat(cipherService.decrypt(encryptData)).isEqualTo(decryptData);
}
}
подскажите пожалуйста, где и как правильно прописать properties для теcтов? Читал и руководствовался, но не помогло:
https://docs.spring.io/spring/docs/5.1.3.RELEASE/javadoc-api/org/springframework/test/context/TestPropertySource.html
Проверьте наличие файла application.properties
в src/test/resources/
Вам необходимо добавить аннотацию @SpringBootTest
к классу
@RunWith(SpringRunner.class)
@SpringBootTest
public class CipherServiceTest {}
Подробнее здесь, пункт 45.4.1
Для тестов спринг использует @TestPropertySource
вместо @PropertySource
. Эта аннотация имеет более высокий приоритет:
@TestPropertySource("classpath:application-test.properties")
Вариант2:
@SpringBootTest(properties = { "key1=value1", "key2=value2" })
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Сделал на томкате скрипт что, если с браузера зайти на http://localhost:8080/helloservlet/hello, то мне в вк отправится hello в личные сообщенияКак сделать запрос...
Первый метод public static void main(String[] agrs) - точка входа, а второй - реализация заданияУ меня реализация в public static void main(String[] agrs), но надо сделать по другому
когда добавлю комментария оно сохраняется в одном же строкеВот код который сохраняет в беззе
Есть файл s1, который нужно скопировать в sНо как сделать так, чтобы можно было несколько файлов скопировать в один и как реализовать с помощью...