[C# 단위테스트] FluentFTP 관련 단위 테스트 코드 작성
- C#/단위테스트
- 2022. 5. 3. 23:19
목적
- 앞서, FTP 서비스 샘플 프로그램 작성을 완료하였습니다.
- 실제로,
FluentFtp
서비스의 DownLoad, Upload, Delete, GetFiles 메서드들이 정상적으로 동작하는지 단위 테스트 코드를 작성하여 확인 진행하였습니다.
단위 테스트 코드
- xUnit 프로젝트를 생성 후, 단위 테스트 코드 작성 진행하였습니다.
using FtpManager;
using FtpManager.Domain;
using FtpManager.FtpConnectionInformation;
using Xunit;
namespace FtpManagerTest
{
public class FtpManagerUnitTest
{
readonly FtpIp ip = new("127.0.0.1");
readonly FtpPassword password = new("1234");
readonly FtpUser user = new("testftp");
readonly FtpHomeAddress address = new("/");
readonly FluentFtpTransfer transfer;
public FtpManagerUnitTest()
{
transfer = new(new FtpConnectionInfo(ip, password, user, address, FtpProtocol.FTP));
}
[Fact]
public void UploadTest()
{
// Arrange
string sourcePath = @"D:\WriteTestTxt.txt";
string targetPath = @"/_Dir/WriteTestTxt.txt";
// Act
var result = transfer.UpLoad(sourcePath, targetPath);
// Assert
Assert.True(result);
}
[Fact]
public void DownLoadTest()
{
// Arrange
string sourcePath = @"D:\123.txt";
string targetPath = @"/_Dir/WriteTestTxt.txt";
// Act
var result = transfer.DownLoad(sourcePath, targetPath);
// Assert
Assert.True(result);
}
[Fact]
public void DeleteTest()
{
// Arrange
string targetPath = @"/_Dir/WriteTestTxt.txt";
// Act
var result = transfer.Delete(targetPath);
// Assert
Assert.True(result);
}
[Fact]
public void GetFilesTest()
{
// Arrange
string directory = @"/_Dir";
// Act
FtpFiles ftpFiles = transfer.GetFiles(directory);
// Assert
Assert.NotNull(ftpFiles);
}
}
}
테스트 결과
- 테스트 결과, 정상적으로 테스트 실행 된 것을 확인할 수 있습니다.
728x90
'C# > 단위테스트' 카테고리의 다른 글
Blazor - bUnit 컴포넌트 내의 Parameter 단위 테스트 방법 (0) | 2022.11.30 |
---|---|
Blazor 단위테스트 - bUnit (0) | 2022.11.29 |
[C# 단위테스트] xUnit Mock 데이터 이용한 파일 접근하기 (0) | 2021.12.20 |
[C# 단위테스트] C# .NET Framework xUnit 단위테스트 하는 방법 (0) | 2021.12.18 |
[C# 단위테스트] xUnit 파일시스템(IFileSystem) Mock데이터 사용법 (0) | 2021.12.17 |
이 글을 공유하기