어떻게 우수한 테스트 코드를 씁니까
1480 단어 JUnitmockitoJasmineSimpleTest
제가 테스트 코드를 쓰는 동안 몇 가지 생각을 해볼게요.
1, 우선 코드의 가독성을 잘 해야 한다. 만약 이 점을 하지 못한다면 나는 나 자신에게 구덩이를 파는 것이라고 생각한다.
그래서 나중에 given, when, then의 방법으로 코드의 구조를 자주 사용했는데 그 뜻은'어떤 조건을 정한 후에','어떤 조작을 실행할 때','어떤 구조가 나올까'라는 것이다.
public class DemoTest{
@Test
public void should_success_when_login() {
// Given
String name = "abc";
// When
boolean result = userService.login(name);
// Then
assertTrue(result);
}
}
2. 테스트를 받는 방법은 너무 길지 않아야 한다. 너무 길면 전기에 대량의 코드를 써서 나중에 실패한 검증을 해야 하기 때문에 얻는 것보다 잃는 것이 많다. 이 문제를 해결하는 방법은 테스트를 받은 논리 코드를 작은 블록으로 봉한 다음에 작은 블록을 단독으로 테스트하는 것이다.
3, 하나의 테스트 클래스에 많은 테스트 방법이 있을 때 골치 아픈 문제가 발생하고 어떤 논리 코드를 찾는 테스트 방법은 그리 간단하지 않다.그래서 유지할 수 있고 읽을 수 있도록우리가 테스트 방법을 규범화하는 방법명이 필요하다.내가 자주 사용하는 테스트 방법에는 규칙이 있다.
should_success_when_username_not_empty()
should_fail_when_username_is_empty()
shoule_throw_argumentException_when_login()
방법 명류를 통해 테스트의 의도를 표현하다.
4, 테스트 클래스 중의 한 방법만 테스트할 수 있도록 하면 많은 시간을 절약할 수 있다.매번 테스트 유형을 한 번 집행할 때마다 테스트 방법이 증가함에 따라 시간 원가도 선형적으로 증가할 것이다.
5. 자신의 개발 효율을 높이기 위해 테스트의 관심사 방법을 검증하는 논리적인 측면에서 간략한 코드를 사용하는 도구류는 매우 중요하다. 예를 들어 간단한 한 줄 코드를 통해 대상을 위조하는 것이지 매번 new에서 대상을 위조한 다음에 각각 속성을 설정하는 것이 아니다.
Java 테스트를 작성하여 자주 사용하는 보조 라이브러리 끝 mockito를 테스트합니다.
PHP 코드를 작성할 때 SimpleTest 사용
JS 코드를 쓸 때 나는 Jasmine을 사용한다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Mockito에서 결과 캡터 생성 및 사용Today I will show you how to create a Mockito captor 에는 을 사용하여 개발자가 모의 메서드 호출 중에 사용된 인수를 확인할 수 있지만 결과 자체는 확인할 수 없습니다. 사실...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.