스프링개발자/202 - 디버깅+테스팅
-
5. Java + Selenium 테스트를 만들 수 있다스프링개발자/202 - 디버깅+테스팅 2020. 8. 15. 05:16
이번 글은 API testing 이 아니라 Front-end UI testing 이다. Fullstack testing?이라는게 있는지는 모르겠지만, backend application 도 간단한 홈페이지 정도는 있는 경우가 많으니, 웹 자동테스팅도 알면 나쁠건 없다. 1. 의존성 추가 mvnrepository.com에서 selenium java를 검색한 결과이다 다음의 의존성을 gradle에 추가하자 // https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java compile group: 'org.seleniumhq.selenium', name: 'selenium-java', version: '3.141.59' 2. Seleniu..
-
4. End-to-End 테스트를 만들 수 있다스프링개발자/202 - 디버깅+테스팅 2020. 8. 15. 04:42
유닛테스트는 클래스 안의 메소드 하나 정도를 테스트 한 작은 단위의 테스트라면, End-to-End 테스트 (줄여서 E2E) 는 모든 영역에 걸쳐 어플리케이션이 잘 작동하는지, client의 입장에서 구현한 테스트이다. 앞서 Postman을 통해 request를 전송하고, response가 잘 나왔는지 검증하는 작업을, 아주 그대로 코드를 통해 구현하는 것이라 생각하면 쉽다. 따라서 해보려면, 이전 글의 완성한 아래의 branch에서 작업 시작하면 된다. https://github.com/2ndPrince/routeOptimization/tree/create-unit-test 1. EndToEndTest 어노테이션을 만들자 package me.ndPrince.routeOptimization.annotat..
-
3. 유닛 테스트를 어노테이션과 함께 만들 수 있다스프링개발자/202 - 디버깅+테스팅 2020. 8. 14. 10:53
내 어플리케이션의 코드가 꽤 많은 상황에서, 몇가지 기능을 추가 구현했는데, 기존 코드가 작동이 안된다면? 실제로 많이 일어나는 문제이다. 이전에 작동 하던 것은 여전히 작동하고, 새로 동작하는 것 또한 잘 작동하도록 하는것이 테스트의 역할이고 테스트가 중요한 이유이다. 가장 작은 테스트 단위인 유닛 테스트를 만들어보자. 이전 글과 마찬가지로, 여기의 코드베이스를 사용한다; (203시리즈에서 만든 코드이다) https://github.com/2ndPrince/routeOptimization/pull/8 1. DispatchService의 유닛 테스트를 만들자 @Service public class DispatchService { public void validate(DispatchRequest reque..
-
2. 인텔리제이(IDE)를 써서 효과적으로 디버깅 할 수 있다스프링개발자/202 - 디버깅+테스팅 2020. 8. 14. 00:59
본 포스팅에 사용되는 코드베이스(204 Validation 시리즈에서 만든 코드이다) https://github.com/2ndPrince/routeOptimization/pull/8 1. 문제 발생 어플리케이션을 실행시키고 아래의 json request를 postman을 이용하여 "/dispatch" endpoint에 전송하자 package me.ndPrince.routeOptimization; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class RouteOptimizationAp..
-
1. Auto-configure 을 이해하고 디버깅 할 수 있다스프링개발자/202 - 디버깅+테스팅 2020. 8. 14. 00:34
스프링부트 공식 문서에 따르면, Autoconfiguration 의 정의는 다음과 같다. 16. Auto-configuration Spring Boot auto-configuration attempts to automatically configure your Spring application based on the jar dependencies that you have added. For example, If HSQLDB is on your classpath, and you have not manually configured any database connection beans, then we will auto-configure an in-memory database. You need to opt-in ..
-
스프링개발자 202스프링개발자/202 - 디버깅+테스팅 2020. 7. 14. 12:44
스프링개발자 카테고리에 대한 아이디어 브레인스토밍이다; [인트로를 추가하자] 여기 스프링개발자202은 "디버깅을 할 수 있다" 시리즈로 가면 좋을것도 같다 생각나는 아이디어를 적자면 Autoconfigure Component/Bean을 디버깅 할 수 있다 properties파일을 디버깅 할 수 있다 인텔리제이(IDE)를 써서 디버깅 할 수 있다(view usages, command-click annotation, evaluate계산기모양등의 디버깅 툴) Postman을 써서 디버깅 할 수 있다 여기 카테고리에 테스트 시리즈도 포함하기로 한다 Unit 테스트 이거는 200레벨 Integration Test End-to-End test Postman Automated test for front-end usi..