使用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,只是没有太多的指导,任何人都可以帮忙吗?