180123-TIL

Reading time ~1 minute

오늘 한일

- Spring Security

  • 로그인 실패시 302가 아닌 403 상태 코드 발생하게 변경

  • 테스트 코드 리팩토링

  • Basic authentication 사용하게 변경

    @Override
      protected void configure(HttpSecurity http) throws Exception {
      http.httpBasic();
    }
    

    그에 따라 테스트 코드도 변경

    import static io.restassured.RestAssured.given;
    
    @Test
    public void showBaord() {
      given()
        .auth()
        .preemptive()
        .basic("hue@korea.kr","password")
      .when()
        .get("/api/boards")
      .then()
        .statusCode(HttpStatus.OK.value());
    }
    

- 자소서


오늘 느낀점

  • 포비한테 궁금한 부분들을 물어보면서 진행을 해서 그런지 오늘은 수월하게 작업이 진행됐다. 일단 Spring Security를 적용하면서 기존과는 다른 형태로 인증을 하게 되면서 테스트 코드를 변경해야 했는데 아직 Spring Security에 대한 이해가 부족하다 보니 많이 헤맸다.

    정확히는 Security를 통해 기능들은 제대로 구현되는 상태에서 기존의 AcceptanceTest 코드들이 빨간불이 켜진 상태였다. 정상적이라면 Security를 적용했다고 빨간불이 많이 켜질 일은 없어야 하지만 학습을 하는 단계라 기존에 일반적이지 않은 부분을 일반적(?)인 Spring Security로 변경을 하면서 인증 과정 자체가 많이 바뀌고 그에 따라 변경되는 부분들이 많았다.

    결론만 얘기하자면 테스트 코드를 은근 슬쩍 지우거나 어영부영 수정하고 넘어갈까 싶었지만,(솔직히 지금의 테스트 코드들도 부족한데 그것까지 바꾸면 스스로 TDD를 지향한다고 말하기 창피했다) 기존의 테스트 코드의 의도는 그대로 놔두는 상태서 요청 부분 혹은 기본적인 Security의 설정을 내가 원하는 응답이 오게 바꿔가면서 테스트 코드들에 대해 모두 초록불을 킬 수 있었다.

    덕분에 Security의 내부까지 제대로 학습됐다고 하진 못해도 일정 부분 사용법에 대해서 숙지 한 기분이다.

  • 자소서 주제는 정했는데 생각 보다 도입부가 잘 안 써진다. 도입부가 별로면 글을 읽는 사람 입장에서도 그냥 지나칠 가능성도 크고, 일단 내 스스로도 다음 내용이 안 써진다. 초안 정도까지만 후딱 작업하고 싶은데 여차하면 내일 낮에 카페 가서 작성하고 와야겠다.


내일 할일

  • trello 구현하기

    • 젠킨스 혹은 OAuth
  • 자소서 작성