1. 코드 오류를 어떻게 잡지?
원래 통합 코드에서 실행 시 오류가 났는데, 그걸 잡기 위해서는 테스트 코드를 하나 작성해서 그 부분만 확인해보는 것이 좋다.
그리고 내가 코드를 작성할 때도, 한번에 다 작성해서 실행하는 것보다, 작성된 코드까지 잘 실행 되는 지를 검증하면서 나머지 코드를 작성하는 것이 좋다.


1. 코드의 결과를 잘 모를 경우
Test 파일을 만들어 부분 테스트를 해보자
- Map 자료형의 메서드 결과값을 잘 모를 경우
package ex20.ch05;
import java.util.HashMap;
import java.util.Map;
public class MyTest {
public static void main(String[] args) {
Map<String, Object> map = new HashMap<>();
String respBody = (String) map.get("name");
System.out.println(respBody);
}
}

- String 자료형의 split메서드의 결과값을 잘 모를 경우
package ex20.ch05;
import java.util.HashMap;
import java.util.Map;
public class MyTest02 {
public static void main(String[] args) {
String reqBody = "GET~name";
String[] method = reqBody.split(":");
System.out.println(method.length);
System.out.println(method[0]);
}
}

2. 잘 안다고 생각했던 코드
package ex20.ch05;
public class MyTest03 {
public static void main(String[] args) {
String msg = "age/20";
String key = msg.split("/")[0];
String value = msg.split("/")[1];
System.out.println(key);
System.out.println(value);
}
}

잘 될 것이라고 생각했던 코드
package ex20.ch05;
public class MyTest03 {
public static void main(String[] args) {
String msg = "age?20";
String key = msg.split("?")[0];
String value = msg.split("?")[1];
System.out.println(key);
System.out.println(value);
}
}

역슬레시 2개를 넣으니 처리됨
이유는 나중에…
package ex20.ch05;
public class MyTest03 {
public static void main(String[] args) {
String msg = "age?20";
String key = msg.split("\\?")[0];
String value = msg.split("\\?")[1];
System.out.println(key);
System.out.println(value);
}
}

Share article