gpt4 book ai didi

java - 如何创建一个 "FTPS"模拟服务器以在 Java 中对文件传输进行单元测试

转载 作者:搜寻专家 更新时间:2023-11-01 02:12:51 24 4
gpt4 key购买 nike

我有一个创建 FTPS 连接的 CreateFTPConnection 类。使用此连接传输文件。这是 TransferFile 类的代码

public class TransferFile
{
private CreateFTPConnection ftpConnection;
private FTPSClient client;

public TransferFile(CreateFTPConnection ftpConnection) {
this.ftpConnection = ftpConnection;
this.client = ftpConnection.getClient();
}

public void transfer(Message<?> msg)
{
InputStream inputStream = null;
try
{
if(!client.isConnected()){
ftpConnection.init();
client = ftpConnection.getClient();
}
File file = (File) msg.getPayload();
inputStream = new FileInputStream(file);
client.storeFile(file.getName(), inputStream);
client.sendNoOp();
} catch (Exception e) {
try
{
client.disconnect();
}
catch (IOException e1) {
e1.printStackTrace();
}
}
finally
{
try {
inputStream.close();
}
catch (IOException e) {
e.printStackTrace();
}
}
}
}

我必须为这个类编写 jUnit 测试用例。为此,我必须创建一个 FTPS 模拟服务器连接,并且必须使用该连接来测试文件传输。所以任何人都可以告诉我如何制作 FTPS 模拟服务器和做测试用例的任何想法。我用谷歌搜索了这个,但我得到的是 FTP 或 SFTP,而不是 FTPS。请帮助我。

最佳答案

您可能会发现这很有用 MockFTPServer

问题是这些模拟服务器没有实现我所看到的 TLS 部分。您可能需要做一些工作才能允许通过 TLS 进行连接。

为了测试,您应该能够四处搜索并在此处找到一些关于处理证书(或在某些情况下绕过证书)的文章。

这是另一个 Article完成创建基本 FTP 服务器测试的步骤。

缺少一个完整的 FTP 服务器(Apache http w/mod_ftp 附加),似乎没有任何有用的东西可以做到这一点。

关于java - 如何创建一个 "FTPS"模拟服务器以在 Java 中对文件传输进行单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14042033/

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