Java 기능의 경우 JUnit, Mockito 및 Cloud Functions Framework를 사용하여 자동화된 통합 테스트를 수행할 수 있습니다. 종속 항목 설치: junit, mockito-core, google-cloud-functions-framework-testing 테스트 사례 작성: FunctionsFrameworkExtensionRule을 상속하고, 요청 및 응답 개체를 모의하고, 함수를 호출하고, 응답을 어설션합니다. 테스트 실행: mvn 테스트 명령 실행
Java 함수에 대한 자동화된 통합 테스트를 수행하는 방법
소개
자동화된 통합 테스트는 Java 기능에 대해서도 통합 Crucial 사례 이후에 구성 요소가 올바르게 작동하는지 확인하는 것입니다. 이 기사에서는 JUnit, Mockito 및 Cloud Functions Framework를 사용하여 Java 기능의 통합 테스트를 자동화하는 방법을 안내합니다.
종속성 설치
프로젝트에 다음 종속성을 추가하세요.
<dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.13.2</version> <scope>test</scope> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <version>4.6.1</version> <scope>test</scope> </dependency> <dependency> <groupId>com.google.cloud</groupId> <artifactId>google-cloud-functions-framework-testing</artifactId> <version>3.4.1</version> <scope>test</scope> </dependency>
테스트 사례 작성
FunctionsFrameworkExtensionRule에서 상속된 테스트 클래스 만들기:
import static com.google.common.truth.Truth.assertThat; import static org.mockito.Mockito.when; import com.google.cloud.functions.HttpRequest; import com.google.cloud.functions.HttpResponse; import java.io.BufferedWriter; import java.io.IOException; import java.io.PrintWriter; import java.io.StringReader; import java.nio.charset.StandardCharsets; import java.util.Map; import org.junit.Before; import org.junit.Rule; import org.junit.Test; import org.junit.rules.TestRule; import org.mockito.Mock; import org.mockito.MockitoAnnotations; public class ExampleFunctionTest { @Rule public TestRule FUNCTIONS_FRAMEWORK_TEST_RULE = new FunctionsFrameworkExtensionRule(); @Mock private HttpRequest request; @Mock private HttpResponse response; private BufferedWriter writerOut; private PrintWriter printWriter; @Before public void beforeEach() { MockitoAnnotations.initMocks(this); writerOut = new BufferedWriter(new PrintWriter(response.getWriter())); printWriter = new PrintWriter(writerOut, true); } @Test public void helloHttp_shouldPrintAName() throws IOException { // Mock request when(request.getReader()).thenReturn(new StringReader("{}")); // Invoke function under test new ExampleFunction().service(request, response); // Assert that the function writes "Hello World!" to the response writerOut.flush(); assertThat(printWriter.toString()).isEqualTo("Hello World!"); } }
실제 사례
위의 테스트 사례에서 , 메시지를 인쇄하는 ExampleFunction
함수를 테스트했습니다. 테스트는 요청 및 응답 개체를 조롱하고, 함수를 호출하고, 예상되는 메시지가 응답에 있는지 확인하는 방식으로 작동합니다. ExampleFunction
函数,该函数打印了一条消息。测试通过模拟请求对象和响应对象,调用函数并断言响应中存在预期的消息。
运行测试
要运行测试,请运行 mvn test
테스트 실행
테스트를 실행하려면mvn test
명령을 실행하세요. 🎜결론🎜🎜🎜JUnit, Mockito 및 Cloud Functions Framework를 사용하면 Java 기능의 자동화된 통합 테스트를 쉽게 수행할 수 있습니다. 이는 다른 구성 요소와 통합된 후에도 기능이 계속 제대로 작동하는지 확인하는 데 도움이 됩니다. 🎜위 내용은 Java 기능의 통합 테스트를 자동화하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!