2016-11-19 10 views
1

Apache camel SFTPコンシューマーをテストする必要があります。開発環境でコードをテストするために埋め込みSFTPサーバーを実行する方法はありますか?これに関する助けを感謝します。Javaコードの埋め込みSFTPサーバー

+0

http://stackoverflow.com/questions/3076443/java-sftp-server-library?rq=1は、私は完全なApacheのミナSSHD例 – Redfoxmoon

+0

が付属していますあなたのために最善の答えが二番目のミナです。私は組み込みサーバを動かす別の方法を知らない。もう1つのオプションは、模擬FTPサーバを探し出すことです(https://itsiastic.wordpress.com/2012/11/08/how-to-create-a-java-ftp-server-mock)。/ –

+0

ありがとうございました! Apache Minaは少なくとも私が実行する必要があるテストのために有望です。この組み込みサーバーで認証用のキーを生成する方法の正しい方向を指摘することもできますか? – Techji

答えて

0

似たような問題が発生したため、テスト中にSFTPサーバーを実行するJUnit 4ルールを書きました。 Fake SFTP Server Ruleと呼ばれ、Apache Mina SSHDを内部的に使用します。ここではそのルールを使用したテストの例です:

public class SomeTest { 
    @Rule 
    public final FakeSftpServerRule sftpServer = new FakeSftpServerRule(); 

    @Test 
    public void testTextFile() { 
     //code that uploads the file 

     String fileContent = sftpServer.getFileContent("/directory/file.txt", UTF_8); 

     //verify content 
    } 
} 
関連する問題