gpt4 book ai didi

java - 在 Tomcat 服务器上运行 Java Servlet 单元测试

转载 作者:行者123 更新时间:2023-11-28 22:10:14 27 4
gpt4 key购买 nike

我有一个 Java HttpServlet。当我们向这个 servlet 发送 get 请求时,它会检查服务器中的文件是否存在。如果不创建一个新文件。

我想写一些单元测试。当发送 get 请求时,断言新文件已创建。我的问题是我在本地机器上运行的测试,而不是在本地服务器中创建的 Tomcat 服务器和临时文件。

这是我的代码:

    HttpGet httpGet = new HttpGet("localhost:8080/myfilename");
HttpClient httpClient = HttpClientBuilder.create().build();
httpClient.execute(httpGet);

File directory = new File("myfilename");

// then
assertTrue(directory.exists());

如何在 tomcat 服务器上运行单元测试?

最佳答案

明确的非回答:你不这样做。

长答案:单元测试是关于在隔离中测试单元。为了有用,您模拟/ stub 任何外部的东西,例如:Web 或应用程序服务器。

换句话说:应该为您的服务器为特定 URL 调用的代码编写一个真正的 单元测试。您可以编写一个体面的单元测试来确保:“当我被调用时,我检查该文件,如果没有,则创建它”。

然后独立于任何 Tomcat 服务器进行测试。

然后,稍后,您可能想要测试您的端到端 功能是否有效。但是当然,您应该只使用您的服务器 本身必须提供的 API。

关于java - 在 Tomcat 服务器上运行 Java Servlet 单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59304678/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com