使用Apache Mina作为模拟/内存SFTP服务器进行单元测试
2022-09-03 15:39:08
我在弄清楚如何使用Apache Mina时遇到了一些麻烦。他们的文档对于我无才华的大脑来说有点少。我在 Java SFTP 服务器库中看到了有用的起始代码?
我无法弄清楚的是如何使用它。我想设置一个单元测试来检查我的sftp代码,使用Mina作为一种模拟服务器,即能够编写一个单元测试,如:
@Before
public void beforeTestSetup() {
sshd = SshServer.setUpDefaultServer();
sshd.setPort(22);
sshd.setKeyPairProvider(new SimpleGeneratorHostKeyProvider("hostkey.ser"));
List<NamedFactory<UserAuth>> userAuthFactories = new ArrayList<NamedFactory<UserAuth>>();
userAuthFactories.add(new UserAuthNone.Factory());
sshd.setUserAuthFactories(userAuthFactories);
sshd.setPublickeyAuthenticator(new PublickeyAuthenticator());
sshd.setCommandFactory(new ScpCommandFactory());
List<NamedFactory<Command>> namedFactoryList = new ArrayList<NamedFactory<Command>>();
namedFactoryList.add(new SftpSubsystem.Factory());
sshd.setSubsystemFactories(namedFactoryList);
try {
sshd.start();
} catch (Exception e) {
e.printStackTrace();
}
}
@Test
public void testGetFile() {
}
问题是要放入什么。testGetFile()
我一直在搜索测试代码,想知道是否需要在上面进行更多配置来指定根目录,用户名和身份验证密钥文件名。然后,我需要使用客户端或我自己的 SFTP API 代码从中获取和提取文件?
我确信这是一个优秀的API,只是没有太多的指导,任何人都可以帮忙吗?