Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

444
Visualizações
No se puede simular el objeto SFTPClient de SSH.Net para el marco de casos de prueba de la unidad de Microsoft

He usado el objeto SftpClient de SSH.Net para realizar operaciones de carga y descarga en el servidor.

Estoy tratando de escribir casos de prueba de unidad para la clase que usa este objeto SftpClient.

La clase en sí se burla, pero no puedo configurar un objeto de cliente sin tener que conectarme al servidor, lo cual no es correcto.

 public class MockFTPStreamRepository : IFTPStreamRepository { public async Task<MySFTFReposResults> MyMethod1(MyDTO dto) { MemoryStream stream = new MemoryStream(); StreamWriter writer = new StreamWriter(stream); SftpClient myClient = new SftpClient("ftp://localhost", "", ""); sftpClient.Connect(); writer.Write("Some Content"); writer.Flush(); stream.Position = 0; return new MySFTFReposResults { IsTransferSuccess = true, FileStream = stream, sftpClient = myClient}; } }

No puedo proporcionar un servidor ftp real y las credenciales anteriores para conectarme, ya que eso no es válido para otros entornos.

¿Hay alguna manera de obtener un objeto SftpClient válido de esto?

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Como esta es una clase concreta, la prueba de sus métodos no se puede realizar sin crear una conexión real. Sin embargo, hay varias formas de probar esto.

La primera es envolviendo el SftpCLient en una interfaz y usando Constructor Injection para crear una costura. Luego, con el marco Moq , puede simular las llamadas de método que llama desde sus propios métodos.

También puede crear un servidor sftp local y crear un espejo de los casos del mundo real para que pueda probar el comportamiento de sus métodos.

También podría ser que haya un paquete nuget que admita el servidor SFTP en memoria.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda