개발

테스트코드 작성하기 (1)

TIKITAK 2023. 10. 24. 23:58
반응형

안녕하세요!!

오늘은 저번에 생성한 클래스에 이어서 테스트코드를 작성해보겠습니다!!!

 

저희가 만들어놓은 클래스에 주석으로 비밀번호 테스트 코드에 대한 설명을 작성해줍니다!

그리고!!

 

 

window키 : alt + insert 로 test method를 클릭해줍니다!!

 

다음으로!!

 

이런식으로 나오신것을 확인 할수 있습니다!!

그럼 test Method가 하나 생성된 것을 확인할수 있습니다!!

 

다음으로!!

 

테스트 메소드의 의도를 나타내주기 위하여 DisplayName을 가지고 표현해보겠습니다!!

이런식으로 @DisplayName하고 안에 원하는 문구를 넣어주시면 됩니다!!

 

다음으로!

 

PasswordValidator

위 객체에게 validate를 맡겨보겠습니다!!

비밀번호 serverwizard에 대해서 진행해보겠습니다!!

 

assertThatCode(PasswordValidator.validate("serverwizard"))

저희가 처음 작성하였던 테스트메서드 안에 넣어줍니다!!

이런식으로요!!!

 

다음으로 지금 빨간색이 들어와있습니다 assertThatCode가 인식이 안되어서 저렇게 보이는겁니다!!

 

일단 F2를 누르면 현재 빨간색인 줄로 이동합니다 이동해서 alt + enter를 누르시고

위사진처럼 나오시면 가운데있는 것을 선택합니다!!

그러면 이런식으로 import 된것을 확인할수 있습니다!!

 

문구 위 사진처럼 수정 해주세요!!

 

위에서 assertThatCode가 실행되었을때

() -> PasswordValidator.validate("serverwizard")

안에 있는 명령에 예외가 발생하지 않음을 확인 하기위해서

 

위사진처럼

.doesNotThrowAnyException();

위 명령어를 추가해주면 됩니다!! 그러면 테스트를 통과하게 될것입니다!!

 

추가해주셨으면 위에 빨간색 글씨인 클래스를 만들어줘야합니다!!

 

그러기 위해서는 아까말씀드렸다시피

F2를 누르시고

Alt + enter

여기서 4번째에 있는 Create class를 눌러봅시다!!

이런식으로 test폴더가 아닌 main에다가 만들어 봅시다!!

잘만들어진것을 확인 할수 있습니다!!

이제 클래스안에 validate라는 메서드도 만들어 줘보겠습니다!

또!! alter + enter

하고 create method

완성!!

메서드에 들어오는 값만 password로 바꿔주었습니다!!

이제 실행해볼까요???

 

Run Test 고고!!!

정상종료를 확인 할수 있습니다!!

 

이제 리펙토링을 해보겠습니다!!

 

이런식으로 조건문을 써봤습니다!!

여기서 password를 변수로 빼기 위해서는

리펙토링을 해야합니다!!

한번 해보겠습니다!!

이런식으로 바꿔줄 문장을 선택!

맥 : COMMAND + ALT + V

윈도 : CTRL + ALT + V

누르면 위사진처럼 나옵니다!!

그리고 Replace all 2... 이걸 누릅니다!!

이렇게 뙇!!!

편하긴 하네요 ㅎㅎㅎ

replace로 하는거라서 나중에 여러개가 있을경우에 편할듯 합니다!!

다음으로 exception 문자도 변수로 빼보겠습니다!!

windows : ctrl + alt + c

mac : command + alt + c

변수로 선언하고픈 문자를 드래그후 눌러주시면 위와 같이되서 원하는 변수명을 입력해줍니다!!

원하는 변수명 입력후 ENTER를 누르면 변수 선언 완료!!

 

이제 저희가 잘했는지 확인을 위해 PasswordValidatorTest 클래스로 이동하여 테스트 해보면 됩니다!!

정상종료!!

 

오늘 클래스생성과 테스트 코드 작성과 단축키등등 여러가지해보았네요 ㅎㅎㅎ
너무 뿌듯합니다!!

다들 좋은 밤 보내세요! 감사합니다!

반응형