인텔리제이 단축키 응용

  • 테스트 코드
  • 디버깅
  • 리펙토링
  • 커스텀 단축키 설정하기

 

테스트코드

alt + enter

테스트 코드

- 클래스명 에서 단축키 이용해야됨

- ctrl + shift + T로 생성 가능

 

테스트 코드로 이동

ctrl + shift + T

- 메소드명 위치에서 단축키 클릭하면 바로 이동

- 다시 한번 누르면 원래 클래스로 되돌아옴

 

선택된 테스트 실행

ctrl + shift + F10

- 실행시킬 테스트코드에 포커스를 맞춘다음 실행

 

정지

ctrl + F2

 

리팩토링

F6

클래스 이동

- 바꾸고 싶은 패키지로 변경

- 이렇게 하게 되면 해당 클래스를 import하고 있는 모든 위치가 바뀜

 

ctrl + shift + F6

변수의 타입 변경

왼쪽 : 기존 타입, 오른쪽 : 변경할 타입

- 기본타입으로 변경가능

- 메소드타입도 변경 가능

 

ctrl + F6

메소드의 시그니처 변경

 

shift + F6

이름 변경

- 직접하기 에는 실수가 발생하기 쉬움

- 똑같은 값 한번에 다 바뀜

- esc누르면 원래값으로 복귀 가능

 

ctrl + alt + shift + T

리팩토링 기능 지원 키 한번에 확인 가능

- 다 외우기 복잡하면 이거 하나만 외워서 필요한거 선택

 

디버깅

- 디버깅 실력 == 개발자 실력

 

ctrl + F8

브레이크 포인트 설정

 

ctrl + shift + F8

브레이크 포인트 모두 보기

 

shift + F9

디버깅 모드 실행

 

윈도우 없음;;;;

에디터 실행

- 현재 포커스가 있는 위치에서 디버깅 모드 실행

 

F7, F8

step into(실행 라인 이동)

- 뎁스를 타고 들어감 

- 메소드 내부를 계속 파고들어가서 확인함

 

F7, F8

step over(다음 라인 이동)

 

F9

Resume Program 

- 다음 브레이크 포인트로 바로 이동

 

alt + `

Git

- git 기능 바로 사용 

 

커스텀 단축키

shift 2번 누르고 keymap 치고 엔터

- split 단축키가 따로 없음

 

아래 처럼 경고가 뜬다면 이미 단축키가 존재한다는 것

 

필자는 윈도우 기준

alt+] - stretch split right

으로 등록

 

키보드 멀티커서 단축키 커스텀으로 등록

https://pasudo123.tistory.com/421

 

Live Template 

https://creampuffy.tistory.com/174

 

assert

assertThat(actual$END$).isEqualTo(expected);

 

asserta

assertAll(
        () -> assertThat(actual$END$).isEqualTo(expected),
        () -> assertThat(actual).isEqualTo(expected)
);

 

assertThatThrownBy

Assertions.assertThatThrownBy(() -> {
    $END$
}).isInstanceOf(IllegalArgumentException.class);

 

dynamicTest

@DisplayName("큰테스트이름")
@TestFactory
Stream<DynamicTest> collectionsOfDynamicTest() {
    return Stream.of(
            dynamicTest("테스트케이스1", () -> {
                // given
                $END$

                // when
                

                // then
                assertThat(actual).isEqualTo(expected);
            }),

            dynamicTest("테스트케이스2", () -> {
                // given


                // when
                

                // then
                assertThat(actual).isEqualTo(expected);
            })
    );
}

 

given

// given

// when

// then

 

methodsource

@ParameterizedTest(name = " : {0}")
@MethodSource("methodSource")
@DisplayName("sampleTest")
void sampleTest(String s, boolean expected) {
    // given
    $END$
    
    // when

    // then
    assertThat(actual).isEqualTo(expected);
}

private static Stream<Arguments> methodSource() {
    return Stream.of(
            Arguments.of(null, true),
            Arguments.of(null, true)
    );
}

 

ptest

@ParameterizedTest(name = " : {0}")
@CsvSource(value = {"", ""})
@DisplayName("sampleTest")
void parameterizedTest() {
    // given
    $END$
    
    
    // when
    
    
    // then
    assertThat(actual).isEqualTo(expected);
}

 

test

@DisplayName("sample test")
@Test
void testMethodNameHere() {
    // given
    $END$
    
    // when
    
    // then
    assertThat(actual).isEqualTo(expected);
}

'IDE > Intellij' 카테고리의 다른 글

인텔리제이 단축키 정리 - 2  (0) 2021.03.15
인텔리제이 단축키 정리 - 1  (0) 2021.03.11
인텔리제이(Intellij) 디버깅 하는법  (0) 2020.11.29