SFTP - SSH File Transfer Protocol
What is SFTP?
SFTP stands for SSH File Transfer Protocol (or Secure File Transfer Protocol). It’s a standard network protocol used to transfer files securely between a client and a server over a TCP/IP network, typically using SSH.
What is the purpose of SFTP?
Secure file transfers over an encrypted channel.
Remote file management (upload, download, delete, rename, etc.).
Compliance with data protection and privacy standards.
Secure business-to-business (B2B) data exchange.
Widely used in web development, system administration, and automation.
How does it work?
Client connects to the SFTP server – usually using SSH credentials.
Authentication – Username/password or SSH key-based authentication.
Secure file operations – Upload, download, delete, rename files.
All communication is encrypted using SSH.
The session ends when the client disconnects.
Operates over a single encrypted connection (unlike FTP, which uses separate command/data channels).
Where is SFTP used?
Web hosting – Uploading website content securely.
Backup systems – Remote and automated secure backups.
Software distribution – Distributing patches, updates securely.
IT administration – Managing logs and configuration files on servers.
Financial and healthcare sectors – Where secure file exchange is critical.
Which OSI Layer does this protocol belong to?
SFTP operates at the Application Layer (Layer 7) of the OSI model.
It uses application-level commands like GET, PUT, LIST, etc.
It runs over SSH, which in turn uses TCP (Layer 4) for transport.
Topics in this section,
In this section, you are going to learn
Terminology
Version Info
sno |
RTMP Version |
RFC / Standard |
Core / Contribution |
Year |
---|---|---|---|---|
1 |
N/A |
Draft (not finalized as RFC) |
SSH File Transfer Protocol v3 (widely supported), v4v6 (not widely supported) |
~20012006 (drafts) |
2 |
N/A |
RFC 913 |
Simple File Transfer Protocol (unrelated to SSH-based SFTP) |
1984 |
3 |
N/A |
RFC 42504254 |
Core SSH Protocols (underpin SFTP) |
2006 |
Setup
Setup
SFTP INIT Packet
S.No |
Protocol Packets |
Description |
Size(bytes) |
---|---|---|---|
1 |
SFTP INIT Packet |
Client initiates session by sending protocol version over SSH. |
~25 |
Command |
SSH_FXP_INIT(value=1) |
1 |
|
Arguments |
Version, Extensions |
4 + variable |
|
Data (Payload) |
Binary encoded version info over SSH encrypted channel |
0 |
|
SFTP VERSION Packet
2 |
SFTP VERSION Packet |
Server responds with protocol version and extensions |
~25 |
---|---|---|---|
Command |
SSH_FXP_VERSION (2) |
1 |
|
Arguments |
Version, Extensions |
4 + variable |
|
Data (Payload) |
Binary encoded version info over SSH encrypted channel |
0 |
SFTP OPEN Packet
3 |
SFTP OPEN Packet |
Client requests to open a file with mode flags |
~60 |
---|---|---|---|
Command |
SSH_FXP_OPEN (3) |
4 |
|
Arguments |
Filename, Flags, Attributes (variable) |
~20-30 + 4 + variable |
|
Data (Payload) |
Binary packet: command, filename, flags, attributes |
0 |
|
SFTP READ Packet
4 |
SFTP READ Packet |
Client requests file data chunk by offset and length |
50-1050 |
---|---|---|---|
Command |
SSH_FXP_READ (5) |
1 |
|
Arguments |
Handle, Offset , Length |
~16 + 8 + 4 |
|
Data (Payload) |
Binary packet: file handle, offset, length requested |
0 |
|
SFTP DATA Packet
5 |
SFTP DATA Packet |
Server sends requested file data chunk |
~32 |
---|---|---|---|
Command |
SSH_FXP_DATA (103) |
1 |
|
Arguments |
NA |
||
Data (Payload) |
Binary packet: file data bytes |
0 |
|
SFTP WRITE Packet
6 |
SFTP WRITE Packet |
Client sends chunk of file data to write at offset |
~25 |
---|---|---|---|
Command |
SSH_FXP_WRITE (6) |
1 |
|
Arguments |
Handle, Offset , Data |
~16 + 8 + variable |
|
Data (Payload) |
Binary packet: file handle, offset, data bytes |
0 |
|
SFTP CLOSE Packet
7 |
SFTP CLOSE Packet |
Client requests to close the open file handle |
~40 |
---|---|---|---|
Command |
SSH_FXP_CLOSE (4) |
1 |
|
Arguments |
Handle |
~16 |
|
Data (Payload) |
Binary packet: file handle |
0 |
|
SFTP STATUS Packet
8 |
SFTP STATUS Packet |
Server responds with status of last operation |
~40 |
---|---|---|---|
Command |
SSH_FXP_STATUS (101) |
4 + 4 + ~20 |
|
Data (Payload) |
Binary packet: status code and error message |
0 |
|
sno |
Use cases |
Description |
---|---|---|
1 |
Secure File Upload |
Upload files securely from client to server using encryption. |
2 |
Secure File Download |
Download files from server to client with confidentiality and integrity. |
3 |
Automated Backups |
Schedule and automate secure backups of files to a remote server. |
4 |
Remote File Access |
Access and manage files on a remote server securely. |
5 |
Data Synchronization |
Sync files between systems securely using SFTP scripts or tools. |
6 |
Secure Log Transfer |
Transfer log files from production servers to monitoring systems. |
7 |
Secure Configuration Deployment |
Push configuration files to remote systems securely. |
8 |
Secure Media Distribution |
Distribute media files (e.g., videos, images) to clients or partners. |
9 |
Secure Document Exchange |
Exchange sensitive documents (e.g., contracts, reports) between organizations. |
10 |
Secure Software Updates |
Distribute software patches or updates to remote systems. |
11 |
IoT Device Data Upload |
Upload sensor data from IoT devices to a central server securely. |
12 |
Secure Financial Data Transfer |
Transfer financial records (e.g., invoices, statements) between systems. |
13 |
Secure Healthcare Data Exchange |
Exchange patient records or lab results in compliance with HIPAA. |
14 |
Secure Academic Data Sharing |
Share research data or student records between institutions. |
15 |
Secure Legal Document Transfer |
Transfer legal files between law firms and clients securely. |
16 |
Secure Government File Exchange |
Exchange sensitive government documents across departments. |
17 |
Secure CRM Data Sync |
Sync customer data between CRM systems and secure storage. |
18 |
Secure ERP Integration |
Transfer data between ERP systems and external partners. |
19 |
Secure Cloud Storage Access |
Access cloud-hosted files securely using SFTP. |
20 |
Secure File Archiving |
Archive files to a secure remote location for long-term storage. |
21 |
Secure File Sharing with Vendors |
Share files with third-party vendors securely. |
22 |
Secure File Sharing with Clients |
Provide clients with access to reports or deliverables securely. |
23 |
Secure File Transfer in CI/CD |
Transfer build artifacts or logs in DevOps pipelines. |
24 |
Secure File Transfer in E-commerce |
Exchange order data, inventory files, or invoices. |
25 |
Secure File Transfer in Banking |
Transfer transaction logs or audit files between branches. |
26 |
Secure File Transfer in Education |
Share course materials or student submissions securely. |
27 |
Secure File Transfer in Media |
Transfer large media files between production teams. |
28 |
Secure File Transfer in Manufacturing |
Exchange CAD files or production data securely. |
29 |
Secure File Transfer in Logistics |
Share shipment data or tracking files securely. |
30 |
Secure File Transfer in Retail |
Transfer sales reports or inventory data securely. |
31 |
Secure File Transfer in Telecom |
Exchange call logs or configuration files securely. |
32 |
Secure File Transfer in Energy Sector |
Transfer sensor data or reports from remote sites. |
33 |
Secure File Transfer in Research |
Share datasets or simulation results securely. |
34 |
Secure File Transfer in NGOs |
Exchange donor data or project files securely. |
35 |
Secure File Transfer in HR |
Transfer employee records or payroll data securely. |
36 |
Secure File Transfer in Marketing |
Share campaign assets or analytics reports securely. |
37 |
Secure File Transfer in Insurance |
Exchange claims data or policy documents securely. |
38 |
Secure File Transfer in Real Estate |
Share contracts, blueprints, or legal documents. |
39 |
Secure File Transfer in Construction |
Transfer project plans or site reports securely. |
40 |
Secure File Transfer in Aviation |
Share flight data or maintenance logs securely. |
41 |
Secure File Transfer in Automotive |
Exchange design files or diagnostics data securely. |
42 |
Secure File Transfer in Pharmaceuticals |
Transfer clinical trial data or lab results securely. |
43 |
Secure File Transfer in Broadcasting |
Distribute video/audio content securely to affiliates. |
44 |
Secure File Transfer in Publishing |
Share manuscripts or layout files securely. |
45 |
Secure File Transfer in Cybersecurity |
Transfer threat intelligence or logs securely. |
46 |
Secure File Transfer in AI/ML |
Share training datasets or model files securely. |
47 |
Secure File Transfer in Blockchain |
Exchange smart contracts or ledger data securely. |
48 |
Secure File Transfer in Gaming |
Distribute game patches or assets securely. |
49 |
Secure File Transfer in Startups |
Share business plans or investor decks securely. |
50 |
Secure File Transfer in Remote Work |
Enable secure file exchange for distributed teams. |
Sno |
Features |
Description |
---|---|---|
1 |
Secure Data Transfer |
Encrypts all data during transmission to prevent eavesdropping and tampering. |
2 |
Authentication |
Supports password, public key, and multi-factor authentication for secure access. |
3 |
File Upload |
Allows users to securely upload files to a remote server. |
4 |
File Download |
Enables secure downloading of files from a remote server. |
5 |
Directory Listing |
Provides the ability to list files and directories on the remote server. |
6 |
File Rename |
Supports renaming of files on the remote server. |
7 |
File Deletion |
Allows deletion of files from the remote server. |
8 |
Directory Creation |
Enables creation of directories on the remote server. |
9 |
Directory Deletion |
Allows deletion of directories from the remote server. |
10 |
File Permissions Management |
Supports changing file permissions (e.g., chmod) remotely. |
11 |
Resume Interrupted Transfers |
Can resume file transfers if interrupted, depending on client/server support. |
12 |
File Integrity Verification |
Ensures files are transferred without corruption using checksums or hashes. |
13 |
Logging & Auditing |
Tracks file transfer activities for security and compliance. |
14 |
Cross-Platform Compatibility |
Works across Windows, Linux, macOS, and other platforms. |
15 |
Firewall-Friendly |
Operates over a single port (typically port 22), simplifying firewall configuration. |
16 |
Compression Support |
Can compress files during transfer to save bandwidth (if enabled). |
17 |
Symbolic Link Handling |
Supports reading and managing symbolic links on remote systems. |
18 |
Atomic Operations |
Ensures file operations are completed fully or not at all, avoiding partial updates. |
19 |
Session Management |
Maintains secure sessions with timeout and reconnection support. |
20 |
Integration with SSH |
Built on SSH protocol, inheriting its security and authentication features. |
Secure Data Transfer - Testcases
S.No |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
TC_SDT_001 |
Upload file over SFTP |
File uploaded securely |
2 |
TC_SDT_002 |
Download file over SFTP |
File downloaded securely |
3 |
TC_SDT_003 |
Verify encryption during upload |
Data encrypted in transit |
4 |
TC_SDT_004 |
Verify encryption during download |
Data encrypted in transit |
5 |
TC_SDT_005 |
Use SFTP with AES encryption |
Data encrypted using AES |
6 |
TC_SDT_006 |
Use SFTP with ChaCha20 encryption |
Data encrypted using ChaCha20 |
7 |
TC_SDT_007 |
Use SFTP with default SSH encryption |
Default cipher used securely |
8 |
TC_SDT_008 |
Attempt file transfer without encryption |
Error or transfer blocked |
9 |
TC_SDT_009 |
Transfer file with integrity check |
File verified after transfer |
10 |
TC_SDT_010 |
Transfer file with checksum validation |
Checksum matches source |
11 |
TC_SDT_011 |
Transfer file with tampered data |
Error: Integrity check failed |
12 |
TC_SDT_012 |
Transfer file with MITM attack simulation |
Connection rejected |
13 |
TC_SDT_013 |
Transfer file with expired SSH key |
Error: Authentication failed |
14 |
TC_SDT_014 |
Transfer file with revoked SSH key |
Error: Access denied |
15 |
TC_SDT_015 |
Transfer file with valid SSH key |
File transferred securely |
16 |
TC_SDT_016 |
Transfer file with password authentication |
File transferred securely |
17 |
TC_SDT_017 |
Transfer file with MFA enabled |
File transferred after MFA |
18 |
TC_SDT_018 |
Transfer file with session timeout |
Transfer aborted securely |
19 |
TC_SDT_019 |
Transfer file with session resume |
Transfer resumes securely |
20 |
TC_SDT_020 |
Transfer file with firewall enabled |
File transferred securely |
21 |
TC_SDT_021 |
Transfer file with VPN enabled |
File transferred securely |
22 |
TC_SDT_022 |
Transfer file with proxy enabled |
File transferred securely |
23 |
TC_SDT_023 |
Transfer file with IP whitelisting |
File transferred from allowed IP |
24 |
TC_SDT_024 |
Transfer file with IP blacklisting |
Transfer blocked |
25 |
TC_SDT_025 |
Transfer file with port 22 open |
File transferred securely |
26 |
TC_SDT_026 |
Transfer file with port 22 blocked |
Transfer fails |
27 |
TC_SDT_027 |
Transfer file with compression enabled |
File transferred securely and compressed |
28 |
TC_SDT_028 |
Transfer file with compression disabled |
File transferred securely |
29 |
TC_SDT_029 |
Transfer file with large size |
File transferred securely |
30 |
TC_SDT_030 |
Transfer file with small size |
File transferred securely |
31 |
TC_SDT_031 |
Transfer file with high latency |
File transferred securely with delay |
32 |
TC_SDT_032 |
Transfer file with packet loss |
File transferred securely with retries |
33 |
TC_SDT_033 |
Transfer file with bandwidth throttling |
File transferred securely at limited speed |
34 |
TC_SDT_034 |
Transfer file with audit logging enabled |
Transfer logged securely |
35 |
TC_SDT_035 |
Transfer file with audit logging disabled |
File transferred securely, no logs |
36 |
TC_SDT_036 |
Transfer file with symbolic link |
Target file transferred securely |
37 |
TC_SDT_037 |
Transfer file with hidden attribute |
File transferred securely |
38 |
TC_SDT_038 |
Transfer file with special characters |
File transferred securely |
39 |
TC_SDT_039 |
Transfer file with unicode characters |
File transferred securely |
40 |
TC_SDT_040 |
Transfer file with long filename |
File transferred securely |
41 |
TC_SDT_041 |
Transfer file with invalid characters |
Error: Invalid filename |
42 |
TC_SDT_042 |
Transfer file with ACLs |
ACLs preserved or logged |
43 |
TC_SDT_043 |
Transfer file with extended attributes |
Attributes preserved or ignored |
44 |
TC_SDT_044 |
Transfer file with encryption audit |
Encryption method logged |
45 |
TC_SDT_045 |
Transfer file with integrity audit |
Integrity check logged |
46 |
TC_SDT_046 |
Transfer file with retry on failure |
File transferred securely after retry |
47 |
TC_SDT_047 |
Transfer file with concurrent sessions |
File transferred securely in all sessions |
48 |
TC_SDT_048 |
Transfer file with session isolation |
File transferred securely in isolated session |
49 |
TC_SDT_049 |
Transfer file with version control |
File version tracked securely |
50 |
TC_SDT_050 |
Transfer file with backup enabled |
File backed up and transferred securely |
Authentication, - Testcases
S.No |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
TC_AUTH_001 |
Login with valid username and password |
Authentication successful |
2 |
TC_AUTH_002 |
Login with invalid username |
Authentication failed |
3 |
TC_AUTH_003 |
Login with invalid password |
Authentication failed |
4 |
TC_AUTH_004 |
Login with empty username |
Authentication failed |
5 |
TC_AUTH_005 |
Login with empty password |
Authentication failed |
6 |
TC_AUTH_006 |
Login with both fields empty |
Authentication failed |
7 |
TC_AUTH_007 |
Login with valid SSH key |
Authentication successful |
8 |
TC_AUTH_008 |
Login with invalid SSH key |
Authentication failed |
9 |
TC_AUTH_009 |
Login with expired SSH key |
Authentication failed |
10 |
TC_AUTH_010 |
Login with revoked SSH key |
Authentication failed |
11 |
TC_AUTH_011 |
Login with passphrase-protected SSH key |
Prompt for passphrase and login successful |
12 |
TC_AUTH_012 |
Login with incorrect SSH key passphrase |
Authentication failed |
13 |
TC_AUTH_013 |
Login with valid certificate |
Authentication successful |
14 |
TC_AUTH_014 |
Login with expired certificate |
Authentication failed |
15 |
TC_AUTH_015 |
Login with revoked certificate |
Authentication failed |
16 |
TC_AUTH_016 |
Login with MFA enabled |
Prompt for second factor |
17 |
TC_AUTH_017 |
Login with valid MFA code |
Authentication successful |
18 |
TC_AUTH_018 |
Login with invalid MFA code |
Authentication failed |
19 |
TC_AUTH_019 |
Login with expired MFA code |
Authentication failed |
20 |
TC_AUTH_020 |
Login with IP whitelisted |
Authentication successful |
21 |
TC_AUTH_021 |
Login with IP blacklisted |
Authentication denied |
22 |
TC_AUTH_022 |
Login with MAC address filtering enabled |
Authentication based on MAC |
23 |
TC_AUTH_023 |
Login with valid LDAP credentials |
Authentication successful |
24 |
TC_AUTH_024 |
Login with invalid LDAP credentials |
Authentication failed |
25 |
TC_AUTH_025 |
Login with Kerberos ticket |
Authentication successful |
26 |
TC_AUTH_026 |
Login with expired Kerberos ticket |
Authentication failed |
27 |
TC_AUTH_027 |
Login with OAuth token |
Authentication successful |
28 |
TC_AUTH_028 |
Login with expired OAuth token |
Authentication failed |
29 |
TC_AUTH_029 |
Login with tampered OAuth token |
Authentication failed |
30 |
TC_AUTH_030 |
Login with missing token |
Authentication failed |
31 |
TC_AUTH_031 |
Login with valid API key |
Authentication successful |
32 |
TC_AUTH_032 |
Login with invalid API key |
Authentication failed |
33 |
TC_AUTH_033 |
Login with revoked API key |
Authentication failed |
34 |
TC_AUTH_034 |
Login with expired session |
Authentication failed |
35 |
TC_AUTH_035 |
Login with concurrent sessions limit exceeded |
Authentication denied |
36 |
TC_AUTH_036 |
Login with brute-force attempts |
Account locked or IP blocked |
37 |
TC_AUTH_037 |
Login after account lockout |
Authentication denied |
38 |
TC_AUTH_038 |
Login after cooldown period |
Authentication successful |
39 |
TC_AUTH_039 |
Login with SQL injection in username |
Authentication failed, input sanitized |
40 |
TC_AUTH_040 |
Login with script injection in password |
Authentication failed, input sanitized |
41 |
TC_AUTH_041 |
Login with special characters in username |
Authentication successful or sanitized |
42 |
TC_AUTH_042 |
Login with long username (>255 chars) |
Authentication failed |
43 |
TC_AUTH_043 |
Login with long password (>255 chars) |
Authentication failed |
44 |
TC_AUTH_044 |
Login with UTF-8 encoded credentials |
Authentication successful |
45 |
TC_AUTH_045 |
Login with credentials over encrypted channel |
Authentication successful |
46 |
TC_AUTH_046 |
Login with credentials over unencrypted channel |
Warning or authentication blocked |
47 |
TC_AUTH_047 |
Login with credentials stored in secure vault |
Authentication successful |
48 |
TC_AUTH_048 |
Login with credentials stored in plaintext |
Security warning |
49 |
TC_AUTH_049 |
Login with audit logging enabled |
Authentication event logged |
50 |
TC_AUTH_050 |
Login with audit logging disabled |
Authentication not logged |
File Upload - Testcases
S.No |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
TC_FU_001 |
Upload a valid file |
File uploaded successfully |
2 |
TC_FU_002 |
Upload a file with special characters in name |
File uploaded successfully |
3 |
TC_FU_003 |
Upload a file with spaces in name |
File uploaded successfully |
4 |
TC_FU_004 |
Upload a file with unicode characters |
File uploaded successfully |
5 |
TC_FU_005 |
Upload a file with long filename (>255 chars) |
Error or file uploaded based on server |
6 |
TC_FU_006 |
Upload a file with no extension |
File uploaded successfully |
7 |
TC_FU_007 |
Upload a file with multiple extensions |
File uploaded successfully |
8 |
TC_FU_008 |
Upload a file with hidden attribute |
File uploaded successfully |
9 |
TC_FU_009 |
Upload a file with read-only permissions |
Error or file uploaded based on server config |
10 |
TC_FU_010 |
Upload a file with write-only permissions |
File uploaded successfully |
11 |
TC_FU_011 |
Upload a file with execute-only permissions |
File uploaded successfully |
12 |
TC_FU_012 |
Upload a binary file |
File uploaded successfully |
13 |
TC_FU_013 |
Upload a text file |
File uploaded successfully |
14 |
TC_FU_014 |
Upload a compressed file (.zip, .tar) |
File uploaded successfully |
15 |
TC_FU_015 |
Upload an encrypted file |
File uploaded securely |
16 |
TC_FU_016 |
Upload a file with checksum verification |
File uploaded and verified |
17 |
TC_FU_017 |
Upload a file with integrity check |
File uploaded and verified |
18 |
TC_FU_018 |
Upload a file with audit logging enabled |
Upload logged successfully |
19 |
TC_FU_019 |
Upload a file with audit logging disabled |
File uploaded, no log entry |
20 |
TC_FU_020 |
Upload a file with retry on failure |
File uploaded after retry |
21 |
TC_FU_021 |
Upload a file with timeout |
Error: Upload timed out |
22 |
TC_FU_022 |
Upload a file with slow network |
File uploaded with delay |
23 |
TC_FU_023 |
Upload a file with packet loss |
File uploaded with retransmission |
24 |
TC_FU_024 |
Upload a file with session timeout |
Error: Session expired |
25 |
TC_FU_025 |
Upload a file after reconnecting session |
File uploaded successfully |
26 |
TC_FU_026 |
Upload a file with invalid session token |
Error: Unauthorized |
27 |
TC_FU_027 |
Upload a file with expired credentials |
Error: Authentication failed |
28 |
TC_FU_028 |
Upload a file with MFA enabled |
File uploaded after MFA verification |
29 |
TC_FU_029 |
Upload a file with symbolic link |
Target file uploaded or link ignored |
30 |
TC_FU_030 |
Upload a file to a restricted directory |
Error: Access denied |
31 |
TC_FU_031 |
Upload a file to a read-only directory |
Error: Cannot write to directory |
32 |
TC_FU_032 |
Upload a file to a hidden directory |
File uploaded successfully |
33 |
TC_FU_033 |
Upload a file to a non-existent directory |
Error: Directory not found |
34 |
TC_FU_034 |
Upload a file using GUI client |
File uploaded successfully |
35 |
TC_FU_035 |
Upload a file using CLI client |
File uploaded successfully |
36 |
TC_FU_036 |
Upload a file using automated script |
File uploaded successfully |
37 |
TC_FU_037 |
Upload a file using batch operation |
File uploaded successfully |
38 |
TC_FU_038 |
Upload multiple files in one command |
All files uploaded successfully |
39 |
TC_FU_039 |
Upload a file with confirmation prompt |
File uploaded after confirmation |
40 |
TC_FU_040 |
Cancel file upload after prompt |
File not uploaded |
41 |
TC_FU_041 |
Upload a file with bandwidth throttling |
File uploaded at limited speed |
42 |
TC_FU_042 |
Upload a file with encryption enabled |
File uploaded securely |
43 |
TC_FU_043 |
Upload a file with compression enabled |
File uploaded with reduced size |
44 |
TC_FU_044 |
Upload a file with version control |
New version created |
45 |
TC_FU_045 |
Upload a file with backup enabled |
File backed up and uploaded |
46 |
TC_FU_046 |
Upload a file with ACLs |
ACLs preserved or applied |
47 |
TC_FU_047 |
Upload a file with extended attributes |
Attributes preserved or ignored |
48 |
TC_FU_048 |
Upload a file with integrity audit |
Integrity check logged |
49 |
TC_FU_049 |
Upload a file with logging disabled |
File uploaded, no logs |
50 |
TC_FU_050 |
Upload a file with full audit compliance |
File uploaded and fully logged |
File Download - Testcases
S.No |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
TC_FD_001 |
Download a valid file |
File downloaded successfully |
2 |
TC_FD_002 |
Download a file with special characters in name |
File downloaded successfully |
3 |
TC_FD_003 |
Download a file with spaces in name |
File downloaded successfully |
4 |
TC_FD_004 |
Download a file with unicode characters |
File downloaded successfully |
5 |
TC_FD_005 |
Download a file with long filename (>255 chars) |
Error or file downloaded based on system |
6 |
TC_FD_006 |
Download a file with no extension |
File downloaded successfully |
7 |
TC_FD_007 |
Download a file with multiple extensions |
File downloaded successfully |
8 |
TC_FD_008 |
Download a hidden file |
File downloaded successfully |
9 |
TC_FD_009 |
Download a read-only file |
File downloaded successfully |
10 |
TC_FD_010 |
Download a write-only file |
Error: Permission denied |
11 |
TC_FD_011 |
Download an executable file |
File downloaded successfully |
12 |
TC_FD_012 |
Download a binary file |
File downloaded successfully |
13 |
TC_FD_013 |
Download a text file |
File downloaded successfully |
14 |
TC_FD_014 |
Download a compressed file (.zip, .tar) |
File downloaded successfully |
15 |
TC_FD_015 |
Download an encrypted file |
File downloaded securely |
16 |
TC_FD_016 |
Download a file with checksum verification |
File verified after download |
17 |
TC_FD_017 |
Download a file with integrity check |
File verified after download |
18 |
TC_FD_018 |
Download a file with audit logging enabled |
Download logged successfully |
19 |
TC_FD_019 |
Download a file with audit logging disabled |
File downloaded, no log entry |
20 |
TC_FD_020 |
Download a file with retry on failure |
File downloaded after retry |
21 |
TC_FD_021 |
Download a file with timeout |
Error: Download timed out |
22 |
TC_FD_022 |
Download a file with slow network |
File downloaded with delay |
23 |
TC_FD_023 |
Download a file with packet loss |
File downloaded with retransmission |
24 |
TC_FD_024 |
Download a file with session timeout |
Error: Session expired |
25 |
TC_FD_025 |
Download a file after reconnecting session |
File downloaded successfully |
26 |
TC_FD_026 |
Download a file with invalid session token |
Error: Unauthorized |
27 |
TC_FD_027 |
Download a file with expired credentials |
Error: Authentication failed |
28 |
TC_FD_028 |
Download a file with MFA enabled |
File downloaded after MFA verification |
29 |
TC_FD_029 |
Download a symbolic link |
Target file downloaded or link handled |
30 |
TC_FD_030 |
Download a file from a restricted directory |
Error: Access denied |
31 |
TC_FD_031 |
Download a file from a read-only directory |
File downloaded successfully |
32 |
TC_FD_032 |
Download a file from a hidden directory |
File downloaded successfully |
33 |
TC_FD_033 |
Download a file from a non-existent directory |
Error: Directory not found |
34 |
TC_FD_034 |
Download a file using GUI client |
File downloaded successfully |
35 |
TC_FD_035 |
Download a file using CLI client |
File downloaded successfully |
36 |
TC_FD_036 |
Download a file using automated script |
File downloaded successfully |
37 |
TC_FD_037 |
Download a file using batch operation |
File downloaded successfully |
38 |
TC_FD_038 |
Download multiple files in one command |
All files downloaded successfully |
39 |
TC_FD_039 |
Download a file with confirmation prompt |
File downloaded after confirmation |
40 |
TC_FD_040 |
Cancel file download after prompt |
File not downloaded |
41 |
TC_FD_041 |
Download a file with bandwidth throttling |
File downloaded at limited speed |
42 |
TC_FD_042 |
Download a file with encryption enabled |
File downloaded securely |
43 |
TC_FD_043 |
Download a file with compression enabled |
File downloaded with reduced size |
44 |
TC_FD_044 |
Download a file with version control |
Specific version downloaded |
45 |
TC_FD_045 |
Download a file with backup enabled |
File downloaded and backup preserved |
46 |
TC_FD_046 |
Download a file with ACLs |
ACLs preserved or applied |
47 |
TC_FD_047 |
Download a file with extended attributes |
Attributes preserved or ignored |
48 |
TC_FD_048 |
Download a file with integrity audit |
Integrity check logged |
49 |
TC_FD_049 |
Download a file with logging disabled |
File downloaded, no logs |
50 |
TC_FD_050 |
Download a file with full audit compliance |
File downloaded and fully logged |
Directory Listing - Testcases
S.No |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
TC_FD_001 |
Download a valid file |
File downloaded successfully |
2 |
TC_FD_002 |
Download a file with special characters in name |
File downloaded successfully |
3 |
TC_FD_003 |
Download a file with spaces in name |
File downloaded successfully |
4 |
TC_FD_004 |
Download a file with unicode characters |
File downloaded successfully |
5 |
TC_FD_005 |
Download a file with long filename (>255 chars) |
Error or file downloaded based on system |
6 |
TC_FD_006 |
Download a file with no extension |
File downloaded successfully |
7 |
TC_FD_007 |
Download a file with multiple extensions |
File downloaded successfully |
8 |
TC_FD_008 |
Download a hidden file |
File downloaded successfully |
9 |
TC_FD_009 |
Download a read-only file |
File downloaded successfully |
10 |
TC_FD_010 |
Download a write-only file |
Error: Permission denied |
11 |
TC_FD_011 |
Download an executable file |
File downloaded successfully |
12 |
TC_FD_012 |
Download a binary file |
File downloaded successfully |
13 |
TC_FD_013 |
Download a text file |
File downloaded successfully |
14 |
TC_FD_014 |
Download a compressed file (.zip, .tar) |
File downloaded successfully |
15 |
TC_FD_015 |
Download an encrypted file |
File downloaded securely |
16 |
TC_FD_016 |
Download a file with checksum verification |
File verified after download |
17 |
TC_FD_017 |
Download a file with integrity check |
File verified after download |
18 |
TC_FD_018 |
Download a file with audit logging enabled |
Download logged successfully |
19 |
TC_FD_019 |
Download a file with audit logging disabled |
File downloaded, no log entry |
20 |
TC_FD_020 |
Download a file with retry on failure |
File downloaded after retry |
21 |
TC_FD_021 |
Download a file with timeout |
Error: Download timed out |
22 |
TC_FD_022 |
Download a file with slow network |
File downloaded with delay |
23 |
TC_FD_023 |
Download a file with packet loss |
File downloaded with retransmission |
24 |
TC_FD_024 |
Download a file with session timeout |
Error: Session expired |
25 |
TC_FD_025 |
Download a file after reconnecting session |
File downloaded successfully |
26 |
TC_FD_026 |
Download a file with invalid session token |
Error: Unauthorized |
27 |
TC_FD_027 |
Download a file with expired credentials |
Error: Authentication failed |
28 |
TC_FD_028 |
Download a file with MFA enabled |
File downloaded after MFA verification |
29 |
TC_FD_029 |
Download a symbolic link |
Target file downloaded or link handled |
30 |
TC_FD_030 |
Download a file from a restricted directory |
Error: Access denied |
31 |
TC_FD_031 |
Download a file from a read-only directory |
File downloaded successfully |
32 |
TC_FD_032 |
Download a file from a hidden directory |
File downloaded successfully |
33 |
TC_FD_033 |
Download a file from a non-existent directory |
Error: Directory not found |
34 |
TC_FD_034 |
Download a file using GUI client |
File downloaded successfully |
35 |
TC_FD_035 |
Download a file using CLI client |
File downloaded successfully |
36 |
TC_FD_036 |
Download a file using automated script |
File downloaded successfully |
37 |
TC_FD_037 |
Download a file using batch operation |
File downloaded successfully |
38 |
TC_FD_038 |
Download multiple files in one command |
All files downloaded successfully |
39 |
TC_FD_039 |
Download a file with confirmation prompt |
File downloaded after confirmation |
40 |
TC_FD_040 |
Cancel file download after prompt |
File not downloaded |
41 |
TC_FD_041 |
Download a file with bandwidth throttling |
File downloaded at limited speed |
42 |
TC_FD_042 |
Download a file with encryption enabled |
File downloaded securely |
43 |
TC_FD_043 |
Download a file with compression enabled |
File downloaded with reduced size |
44 |
TC_FD_044 |
Download a file with version control |
Specific version downloaded |
45 |
TC_FD_045 |
Download a file with backup enabled |
File downloaded and backup preserved |
46 |
TC_FD_046 |
Download a file with ACLs |
ACLs preserved or applied |
47 |
TC_FD_047 |
Download a file with extended attributes |
Attributes preserved or ignored |
48 |
TC_FD_048 |
Download a file with integrity audit |
Integrity check logged |
49 |
TC_FD_049 |
Download a file with logging disabled |
File downloaded, no logs |
50 |
TC_FD_050 |
Download a file with full audit compliance |
File downloaded and fully logged |
File Rename - Testcases
S.No |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
Rename_ValidFile |
Rename a file with a valid new name |
File is renamed successfully |
2 |
Rename_NonExistentFile |
Attempt to rename a file that does not exist |
Error: File not found |
3 |
Rename_ToExistingFileName |
Rename a file to a name that already exists |
Error: File already exists |
4 |
Rename_EmptyNewName |
Rename a file to an empty string |
Error: Invalid file name |
5 |
Rename_SpecialCharacters |
Rename a file using special characters |
File is renamed if characters are allowed |
6 |
Rename_LongFileName |
Rename a file with a very long name |
File is renamed or error if name exceeds limit |
7 |
Rename_UnicodeCharacters |
Rename a file using Unicode characters |
File is renamed successfully |
8 |
Rename_WithSpaces |
Rename a file with spaces in the new name |
File is renamed successfully |
9 |
Rename_UpperToLowerCase |
Rename a file from uppercase to lowercase |
File is renamed successfully |
10 |
Rename_LowerToUpperCase |
Rename a file from lowercase to uppercase |
File is renamed successfully |
11 |
Rename_FileInUse |
Rename a file currently in use |
Error or rename depending on server behavior |
12 |
Rename_ReadOnlyFile |
Rename a read-only file |
File is renamed if permissions allow |
13 |
Rename_WithoutPermission |
Rename a file without sufficient permissions |
Error: Permission denied |
14 |
Rename_DirectoryAsFile |
Attempt to rename a directory as a file |
Error: Invalid operation |
15 |
Rename_FileAsDirectory |
Attempt to rename a file as a directory |
Error: Invalid operation |
16 |
Rename_SameName |
Rename a file to the same name |
No change, operation succeeds or ignored |
17 |
Rename_CaseSensitive |
Rename a file with only case difference |
File is renamed if FS is case-sensitive |
18 |
Rename_ConcurrentAccess |
Rename a file while another client accesses it |
Rename succeeds or fails based on lock |
19 |
Rename_ValidRelativePath |
Rename using relative path |
File is renamed successfully |
20 |
Rename_ValidAbsolutePath |
Rename using absolute path |
File is renamed successfully |
21 |
Rename_InvalidPath |
Rename using an invalid path |
Error: Invalid path |
22 |
Rename_Symlink |
Rename a symbolic link |
Symlink is renamed, target unchanged |
23 |
Rename_HiddenFile |
Rename a hidden file (e.g., .file) |
File is renamed successfully |
24 |
Rename_ToHiddenFile |
Rename a file to a hidden file |
File is renamed successfully |
25 |
Rename_EmptyDirectory |
Rename an empty directory |
Directory is renamed successfully |
26 |
Rename_NonEmptyDirectory |
Rename a non-empty directory |
Directory is renamed successfully |
27 |
Rename_Recursive |
Rename a directory recursively |
All contents remain intact |
28 |
Rename_WithExtensionChange |
Rename a file and change its extension |
File is renamed successfully |
29 |
Rename_WithoutExtension |
Rename a file and remove its extension |
File is renamed successfully |
30 |
Rename_WithDotPrefix |
Rename a file to start with a dot |
File becomes hidden (on Unix) |
31 |
Rename_InterruptedConnection |
Rename during network interruption |
Rename fails or is retried |
32 |
Rename_LargeFile |
Rename a large file (GBs) |
File is renamed successfully |
33 |
Rename_ZeroByteFile |
Rename a 0-byte file |
File is renamed successfully |
34 |
Rename_UsingScripting |
Rename via automated script |
File is renamed successfully |
35 |
Rename_UsingGUIClient |
Rename using a GUI SFTP client |
File is renamed successfully |
36 |
Rename_UsingCLI |
Rename using command-line SFTP |
File is renamed successfully |
37 |
Rename_UsingAPI |
Rename using SFTP API |
File is renamed successfully |
38 |
Rename_WhileUploading |
Rename a file being uploaded |
Rename fails or is queued |
39 |
Rename_WhileDownloading |
Rename a file being downloaded |
Rename fails or is queued |
40 |
Rename_OverNetworkShare |
Rename a file on a mounted network share |
File is renamed successfully |
41 |
Rename_OverVPN |
Rename a file over VPN connection |
File is renamed successfully |
42 |
Rename_OverSlowConnection |
Rename over a slow connection |
File is renamed, may be delayed |
43 |
Rename_WithAuditLogging |
Rename with audit logging enabled |
Rename is logged |
44 |
Rename_WithVersionControl |
Rename in a version-controlled directory |
Rename is tracked |
45 |
Rename_WithQuotaLimit |
Rename when user is near quota limit |
File is renamed if no space is used |
46 |
Rename_EncryptedFile |
Rename an encrypted file |
File is renamed successfully |
47 |
Rename_CompressedFile |
Rename a compressed file |
File is renamed successfully |
48 |
Rename_UsingWildcard |
Attempt to rename using wildcards |
Error: Wildcards not supported |
49 |
Rename_MultipleFiles |
Rename multiple files in batch |
All files renamed or partial success |
50 |
Rename_WithLoggingDisabled |
Rename with logging disabled |
File is renamed, no logs generated |
File Deletion - Testcases
S.No |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
TC_FD_001 |
Delete an existing file |
File deleted successfully |
2 |
TC_FD_002 |
Delete a non-existent file |
Error: File not found |
3 |
TC_FD_003 |
Delete a file without permission |
Error: Permission denied |
4 |
TC_FD_004 |
Delete a file with read-only permissions |
File deleted if user has delete rights |
5 |
TC_FD_005 |
Delete a file in a restricted directory |
Error: Access denied |
6 |
TC_FD_006 |
Delete a file with special characters in name |
File deleted successfully |
7 |
TC_FD_007 |
Delete a file with spaces in name |
File deleted successfully |
8 |
TC_FD_008 |
Delete a file with unicode characters |
File deleted successfully |
9 |
TC_FD_009 |
Delete a file with long filename (>255 chars) |
Error or file deleted based on server |
10 |
TC_FD_010 |
Delete a file with symbolic link |
Target file deleted or link removed |
11 |
TC_FD_011 |
Delete a symbolic link only |
Link deleted, target remains |
12 |
TC_FD_012 |
Delete a file in nested directory |
File deleted successfully |
13 |
TC_FD_013 |
Delete a file using relative path |
File deleted successfully |
14 |
TC_FD_014 |
Delete a file using absolute path |
File deleted successfully |
15 |
TC_FD_015 |
Delete a file while it is being downloaded |
File deleted or locked |
16 |
TC_FD_016 |
Delete a file while it is being uploaded |
File deletion fails or waits |
17 |
TC_FD_017 |
Delete a file with invalid characters |
Error: Invalid filename |
18 |
TC_FD_018 |
Delete a file with null byte in name |
Error: Invalid filename |
19 |
TC_FD_019 |
Delete a file with trailing slash |
Error: Not a directory |
20 |
TC_FD_020 |
Delete a file with leading dot (hidden file) |
File deleted successfully |
21 |
TC_FD_021 |
Delete a file with no extension |
File deleted successfully |
22 |
TC_FD_022 |
Delete a file with multiple extensions |
File deleted successfully |
23 |
TC_FD_023 |
Delete a file with uppercase extension |
File deleted successfully |
24 |
TC_FD_024 |
Delete a file with mixed case name |
File deleted successfully |
25 |
TC_FD_025 |
Delete a file from root directory |
Error or file deleted based on permissions |
26 |
TC_FD_026 |
Delete a file from mounted volume |
File deleted successfully |
27 |
TC_FD_027 |
Delete a file from network share |
File deleted successfully |
28 |
TC_FD_028 |
Delete a file from read-only filesystem |
Error: Read-only file system |
29 |
TC_FD_029 |
Delete a file with concurrent access |
File deleted or locked |
30 |
TC_FD_030 |
Delete a file with audit logging enabled |
File deleted and logged |
31 |
TC_FD_031 |
Delete a file with audit logging disabled |
File deleted, no log entry |
32 |
TC_FD_032 |
Delete a file using SFTP GUI client |
File deleted successfully |
33 |
TC_FD_033 |
Delete a file using SFTP CLI |
File deleted successfully |
34 |
TC_FD_034 |
Delete a file using automated script |
File deleted successfully |
35 |
TC_FD_035 |
Delete a file using batch operation |
File deleted successfully |
36 |
TC_FD_036 |
Delete multiple files in one command |
All files deleted successfully |
37 |
TC_FD_037 |
Delete a file with confirmation prompt |
File deleted after confirmation |
38 |
TC_FD_038 |
Cancel file deletion after prompt |
File not deleted |
39 |
TC_FD_039 |
Delete a file with retry on failure |
File deleted after retry |
40 |
TC_FD_040 |
Delete a file with timeout |
Error: Operation timed out |
41 |
TC_FD_041 |
Delete a file with slow network |
File deleted with delay |
42 |
TC_FD_042 |
Delete a file with packet loss |
File deleted or retry triggered |
43 |
TC_FD_043 |
Delete a file with encryption enabled |
File deleted securely |
44 |
TC_FD_044 |
Delete a file with compression enabled |
File deleted successfully |
45 |
TC_FD_045 |
Delete a file with session timeout |
Error: Session expired |
46 |
TC_FD_046 |
Delete a file after reconnecting session |
File deleted successfully |
47 |
TC_FD_047 |
Delete a file with invalid session token |
Error: Unauthorized |
48 |
TC_FD_048 |
Delete a file with expired credentials |
Error: Authentication failed |
49 |
TC_FD_049 |
Delete a file with MFA enabled |
File deleted after MFA verification |
50 |
TC_FD_050 |
Delete a file with audit trail export |
File deleted and audit exported |
Directory Creation - Testcases
S.No |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
TC_DC_001 |
Create a new directory with valid name |
Directory created successfully |
2 |
TC_DC_002 |
Create a directory that already exists |
Error: Directory already exists |
3 |
TC_DC_003 |
Create a directory with special characters |
Directory created or sanitized |
4 |
TC_DC_004 |
Create a directory with spaces in name |
Directory created successfully |
5 |
TC_DC_005 |
Create a directory with unicode characters |
Directory created successfully |
6 |
TC_DC_006 |
Create a directory with long name (>255 chars) |
Error or directory created based on server |
7 |
TC_DC_007 |
Create a directory with trailing slash |
Directory created successfully |
8 |
TC_DC_008 |
Create a directory with leading slash |
Directory created at root or error |
9 |
TC_DC_009 |
Create a nested directory structure |
All directories created recursively |
10 |
TC_DC_010 |
Create a directory using relative path |
Directory created successfully |
11 |
TC_DC_011 |
Create a directory using absolute path |
Directory created successfully |
12 |
TC_DC_012 |
Create a directory in a restricted path |
Error: Permission denied |
13 |
TC_DC_013 |
Create a directory without write permission |
Error: Permission denied |
14 |
TC_DC_014 |
Create a directory with read-only permissions |
Error: Cannot write to location |
15 |
TC_DC_015 |
Create a directory with invalid characters |
Error: Invalid directory name |
16 |
TC_DC_016 |
Create a directory with null byte in name |
Error: Invalid directory name |
17 |
TC_DC_017 |
Create a directory with dot prefix (hidden) |
Directory created successfully |
18 |
TC_DC_018 |
Create a directory with numeric name |
Directory created successfully |
19 |
TC_DC_019 |
Create a directory with mixed case name |
Directory created successfully |
20 |
TC_DC_020 |
Create a directory with no name |
Error: Invalid directory name |
21 |
TC_DC_021 |
Create a directory with only spaces |
Error: Invalid directory name |
22 |
TC_DC_022 |
Create a directory with symbolic link in path |
Directory created at target location |
23 |
TC_DC_023 |
Create a directory with path traversal attempt |
Error: Access denied |
24 |
TC_DC_024 |
Create a directory in root directory |
Directory created or error based on permissions |
25 |
TC_DC_025 |
Create a directory in mounted volume |
Directory created successfully |
26 |
TC_DC_026 |
Create a directory in network share |
Directory created successfully |
27 |
TC_DC_027 |
Create a directory in read-only filesystem |
Error: Read-only file system |
28 |
TC_DC_028 |
Create a directory with concurrent access |
Directory created or conflict handled |
29 |
TC_DC_029 |
Create a directory with audit logging enabled |
Directory created and logged |
30 |
TC_DC_030 |
Create a directory with audit logging disabled |
Directory created, no log entry |
31 |
TC_DC_031 |
Create a directory using SFTP GUI client |
Directory created successfully |
32 |
TC_DC_032 |
Create a directory using SFTP CLI |
Directory created successfully |
33 |
TC_DC_033 |
Create a directory using automated script |
Directory created successfully |
34 |
TC_DC_034 |
Create a directory using batch operation |
Directory created successfully |
35 |
TC_DC_035 |
Create multiple directories in one command |
All directories created successfully |
36 |
TC_DC_036 |
Create a directory with confirmation prompt |
Directory created after confirmation |
37 |
TC_DC_037 |
Cancel directory creation after prompt |
Directory not created |
38 |
TC_DC_038 |
Retry directory creation after failure |
Directory created successfully |
39 |
TC_DC_039 |
Create a directory with timeout |
Error: Operation timed out |
40 |
TC_DC_040 |
Create a directory with slow network |
Directory created with delay |
41 |
TC_DC_041 |
Create a directory with packet loss |
Directory created or retry triggered |
42 |
TC_DC_042 |
Create a directory with encryption enabled |
Directory created securely |
43 |
TC_DC_043 |
Create a directory with compression enabled |
Directory created successfully |
44 |
TC_DC_044 |
Create a directory with session timeout |
Error: Session expired |
45 |
TC_DC_045 |
Create a directory after reconnecting session |
Directory created successfully |
46 |
TC_DC_046 |
Create a directory with invalid session token |
Error: Unauthorized |
47 |
TC_DC_047 |
Create a directory with expired credentials |
Error: Authentication failed |
48 |
TC_DC_048 |
Create a directory with MFA enabled |
Directory created after MFA verification |
49 |
TC_DC_049 |
Create a directory with audit trail export |
Directory created and audit exported |
50 |
TC_DC_050 |
Create a directory with symbolic link loop |
Error: Loop detected |
Directory Deletion - Testcases
S.No |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
TC_DD_001 |
Delete an empty directory |
Directory deleted successfully |
2 |
TC_DD_002 |
Delete a non-empty directory |
Error or recursive deletion based on config |
3 |
TC_DD_003 |
Delete a non-existent directory |
Error: Directory not found |
4 |
TC_DD_004 |
Delete a directory without permission |
Error: Permission denied |
5 |
TC_DD_005 |
Delete a directory with read-only permissions |
Error: Cannot delete directory |
6 |
TC_DD_006 |
Delete a directory with special characters |
Directory deleted or error |
7 |
TC_DD_007 |
Delete a directory with spaces in name |
Directory deleted successfully |
8 |
TC_DD_008 |
Delete a directory with unicode characters |
Directory deleted successfully |
9 |
TC_DD_009 |
Delete a directory with long name (>255 chars) |
Error or directory deleted |
10 |
TC_DD_010 |
Delete a symbolic link to a directory |
Link deleted, target remains |
11 |
TC_DD_011 |
Delete a directory using relative path |
Directory deleted successfully |
12 |
TC_DD_012 |
Delete a directory using absolute path |
Directory deleted successfully |
13 |
TC_DD_013 |
Delete a directory with trailing slash |
Directory deleted successfully |
14 |
TC_DD_014 |
Delete a directory with leading slash |
Directory deleted successfully |
15 |
TC_DD_015 |
Delete a hidden directory (starts with dot) |
Directory deleted successfully |
16 |
TC_DD_016 |
Delete a directory with numeric name |
Directory deleted successfully |
17 |
TC_DD_017 |
Delete a directory with mixed case name |
Directory deleted successfully |
18 |
TC_DD_018 |
Delete a directory with no name |
Error: Invalid directory name |
19 |
TC_DD_019 |
Delete a directory with only spaces |
Error: Invalid directory name |
20 |
TC_DD_020 |
Delete a directory with invalid characters |
Error: Invalid directory name |
21 |
TC_DD_021 |
Delete a directory with null byte in name |
Error: Invalid directory name |
22 |
TC_DD_022 |
Delete a directory with symbolic link in path |
Target directory deleted |
23 |
TC_DD_023 |
Delete a directory with path traversal attempt |
Error: Access denied |
24 |
TC_DD_024 |
Delete a directory in root directory |
Directory deleted or error |
25 |
TC_DD_025 |
Delete a directory in mounted volume |
Directory deleted successfully |
26 |
TC_DD_026 |
Delete a directory in network share |
Directory deleted successfully |
27 |
TC_DD_027 |
Delete a directory in read-only filesystem |
Error: Read-only file system |
28 |
TC_DD_028 |
Delete a directory with concurrent access |
Directory deleted or locked |
29 |
TC_DD_029 |
Delete a directory with audit logging enabled |
Directory deleted and logged |
30 |
TC_DD_030 |
Delete a directory with audit logging disabled |
Directory deleted, no log entry |
31 |
TC_DD_031 |
Delete a directory using SFTP GUI client |
Directory deleted successfully |
32 |
TC_DD_032 |
Delete a directory using SFTP CLI |
Directory deleted successfully |
33 |
TC_DD_033 |
Delete a directory using automated script |
Directory deleted successfully |
34 |
TC_DD_034 |
Delete a directory using batch operation |
Directory deleted successfully |
35 |
TC_DD_035 |
Delete multiple directories in one command |
All directories deleted successfully |
36 |
TC_DD_036 |
Delete a directory with confirmation prompt |
Directory deleted after confirmation |
37 |
TC_DD_037 |
Cancel directory deletion after prompt |
Directory not deleted |
38 |
TC_DD_038 |
Retry directory deletion after failure |
Directory deleted successfully |
39 |
TC_DD_039 |
Delete a directory with timeout |
Error: Operation timed out |
40 |
TC_DD_040 |
Delete a directory with slow network |
Directory deleted with delay |
41 |
TC_DD_041 |
Delete a directory with packet loss |
Directory deleted or retry triggered |
42 |
TC_DD_042 |
Delete a directory with encryption enabled |
Directory deleted securely |
43 |
TC_DD_043 |
Delete a directory with compression enabled |
Directory deleted successfully |
44 |
TC_DD_044 |
Delete a directory with session timeout |
Error: Session expired |
45 |
TC_DD_045 |
Delete a directory after reconnecting session |
Directory deleted successfully |
46 |
TC_DD_046 |
Delete a directory with invalid session token |
Error: Unauthorized |
47 |
TC_DD_047 |
Delete a directory with expired credentials |
Error: Authentication failed |
48 |
TC_DD_048 |
Delete a directory with MFA enabled |
Directory deleted after MFA verification |
49 |
TC_DD_049 |
Delete a directory with audit trail export |
Directory deleted and audit exported |
50 |
TC_DD_050 |
Delete a directory with symbolic link loop |
Error: Loop detected |
File Permissions Management - Testcases
S.No |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
TC_FPM_001 |
Change file permission to read-only |
File becomes read-only |
2 |
TC_FPM_002 |
Change file permission to write-only |
File becomes write-only |
3 |
TC_FPM_003 |
Change file permission to execute-only |
File becomes executable |
4 |
TC_FPM_004 |
Grant read, write, execute to owner |
Owner has full access |
5 |
TC_FPM_005 |
Grant read-only to group |
Group can only read the file |
6 |
TC_FPM_006 |
Grant no permissions to others |
Others cannot access the file |
7 |
TC_FPM_007 |
Remove execute permission from file |
File is no longer executable |
8 |
TC_FPM_008 |
Remove write permission from file |
File becomes read-only |
9 |
TC_FPM_009 |
Remove read permission from file |
File cannot be read |
10 |
TC_FPM_010 |
Set permissions using numeric mode (e.g., 755) |
Permissions set correctly |
11 |
TC_FPM_011 |
Set permissions using symbolic mode (e.g., u+x) |
Permissions updated correctly |
12 |
TC_FPM_012 |
Attempt to change permissions without rights |
Error: Permission denied |
13 |
TC_FPM_013 |
Change permissions on a non-existent file |
Error: File not found |
14 |
TC_FPM_014 |
Change permissions on a directory |
Directory permissions updated |
15 |
TC_FPM_015 |
Change permissions on a symbolic link |
Link or target permissions updated |
16 |
TC_FPM_016 |
Change permissions on a hidden file |
Permissions updated successfully |
17 |
TC_FPM_017 |
Change permissions on a file with special characters |
Permissions updated successfully |
18 |
TC_FPM_018 |
Change permissions on a file with unicode name |
Permissions updated successfully |
19 |
TC_FPM_019 |
Change permissions on a file with long name |
Permissions updated successfully |
20 |
TC_FPM_020 |
Change permissions using SFTP GUI client |
Permissions updated successfully |
21 |
TC_FPM_021 |
Change permissions using SFTP CLI |
Permissions updated successfully |
22 |
TC_FPM_022 |
Change permissions using automated script |
Permissions updated successfully |
23 |
TC_FPM_023 |
Change permissions on multiple files |
All permissions updated |
24 |
TC_FPM_024 |
Change permissions recursively in directory |
All files and subfolders updated |
25 |
TC_FPM_025 |
Change permissions with audit logging enabled |
Change logged successfully |
26 |
TC_FPM_026 |
Change permissions with audit logging disabled |
Change not logged |
27 |
TC_FPM_027 |
Change permissions with invalid mode |
Error: Invalid permission mode |
28 |
TC_FPM_028 |
Change permissions with null input |
Error: Invalid input |
29 |
TC_FPM_029 |
Change permissions with timeout |
Error: Operation timed out |
30 |
TC_FPM_030 |
Change permissions with slow network |
Permissions updated with delay |
31 |
TC_FPM_031 |
Change permissions with packet loss |
Retry or error triggered |
32 |
TC_FPM_032 |
Change permissions with encryption enabled |
Permissions updated securely |
33 |
TC_FPM_033 |
Change permissions with compression enabled |
Permissions updated successfully |
34 |
TC_FPM_034 |
Change permissions after session timeout |
Error: Session expired |
35 |
TC_FPM_035 |
Change permissions after reconnecting session |
Permissions updated successfully |
36 |
TC_FPM_036 |
Change permissions with invalid session token |
Error: Unauthorized |
37 |
TC_FPM_037 |
Change permissions with expired credentials |
Error: Authentication failed |
38 |
TC_FPM_038 |
Change permissions with MFA enabled |
Permissions updated after MFA |
39 |
TC_FPM_039 |
Change permissions on read-only file system |
Error: Read-only file system |
40 |
TC_FPM_040 |
Change permissions on network-mounted file |
Permissions updated successfully |
41 |
TC_FPM_041 |
Change permissions on file in restricted directory |
Error: Access denied |
42 |
TC_FPM_042 |
Change permissions on file in root directory |
Permissions updated or denied |
43 |
TC_FPM_043 |
Change permissions on file with concurrent access |
Permissions updated or locked |
44 |
TC_FPM_044 |
Change permissions on file with symbolic link loop |
Error: Loop detected |
45 |
TC_FPM_045 |
Change permissions on file with ACLs |
ACLs updated or preserved |
46 |
TC_FPM_046 |
Change permissions on file with extended attributes |
Attributes preserved or updated |
47 |
TC_FPM_047 |
Change permissions on file with audit trail export |
Permissions updated and audit exported |
48 |
TC_FPM_048 |
Change permissions on file with backup enabled |
Permissions updated and backup triggered |
49 |
TC_FPM_049 |
Change permissions on file with version control |
Permissions updated and version logged |
50 |
TC_FPM_050 |
Change permissions on file with integrity check |
Permissions updated and verified |
Resume Interrupted Transfers - Testcases
S.No |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
TC_RIT_001 |
Resume upload after network disconnection |
Upload resumes from last byte |
2 |
TC_RIT_002 |
Resume download after network disconnection |
Download resumes from last byte |
3 |
TC_RIT_003 |
Resume upload after client reboot |
Upload resumes if session info is retained |
4 |
TC_RIT_004 |
Resume download after client reboot |
Download resumes if session info is retained |
5 |
TC_RIT_005 |
Resume upload after server reboot |
Upload resumes if server supports it |
6 |
TC_RIT_006 |
Resume download after server reboot |
Download resumes if server supports it |
7 |
TC_RIT_007 |
Resume upload after timeout |
Upload resumes from last checkpoint |
8 |
TC_RIT_008 |
Resume download after timeout |
Download resumes from last checkpoint |
9 |
TC_RIT_009 |
Resume upload with partial file present |
Upload resumes from file size offset |
10 |
TC_RIT_010 |
Resume download with partial file present |
Download resumes from file size offset |
11 |
TC_RIT_011 |
Resume upload with file mismatch |
Error or overwrite prompt |
12 |
TC_RIT_012 |
Resume download with file mismatch |
Error or overwrite prompt |
13 |
TC_RIT_013 |
Resume upload with file locked |
Error: File in use |
14 |
TC_RIT_014 |
Resume download with file locked |
Error: File in use |
15 |
TC_RIT_015 |
Resume upload with permission change |
Error: Permission denied |
16 |
TC_RIT_016 |
Resume download with permission change |
Error: Permission denied |
17 |
TC_RIT_017 |
Resume upload with file renamed |
Error or resume fails |
18 |
TC_RIT_018 |
Resume download with file renamed |
Error or resume fails |
19 |
TC_RIT_019 |
Resume upload with file moved |
Error or resume fails |
20 |
TC_RIT_020 |
Resume download with file moved |
Error or resume fails |
21 |
TC_RIT_021 |
Resume upload with symbolic link |
Upload resumes to target file |
22 |
TC_RIT_022 |
Resume download with symbolic link |
Download resumes from target file |
23 |
TC_RIT_023 |
Resume upload with file size mismatch |
Resume from correct offset |
24 |
TC_RIT_024 |
Resume download with file size mismatch |
Resume from correct offset |
25 |
TC_RIT_025 |
Resume upload with checksum validation |
Resume only if checksum matches |
26 |
TC_RIT_026 |
Resume download with checksum validation |
Resume only if checksum matches |
27 |
TC_RIT_027 |
Resume upload with encryption enabled |
Upload resumes securely |
28 |
TC_RIT_028 |
Resume download with encryption enabled |
Download resumes securely |
29 |
TC_RIT_029 |
Resume upload with compression enabled |
Upload resumes with compression |
30 |
TC_RIT_030 |
Resume download with compression enabled |
Download resumes with compression |
31 |
TC_RIT_031 |
Resume upload using GUI client |
Upload resumes successfully |
32 |
TC_RIT_032 |
Resume download using GUI client |
Download resumes successfully |
33 |
TC_RIT_033 |
Resume upload using CLI client |
Upload resumes successfully |
34 |
TC_RIT_034 |
Resume download using CLI client |
Download resumes successfully |
35 |
TC_RIT_035 |
Resume upload using automated script |
Upload resumes successfully |
36 |
TC_RIT_036 |
Resume download using automated script |
Download resumes successfully |
37 |
TC_RIT_037 |
Resume upload with audit logging enabled |
Resume event logged |
38 |
TC_RIT_038 |
Resume download with audit logging enabled |
Resume event logged |
39 |
TC_RIT_039 |
Resume upload with session token expired |
Error: Session expired |
40 |
TC_RIT_040 |
Resume download with session token expired |
Error: Session expired |
41 |
TC_RIT_041 |
Resume upload after MFA re-authentication |
Upload resumes after verification |
42 |
TC_RIT_042 |
Resume download after MFA re-authentication |
Download resumes after verification |
43 |
TC_RIT_043 |
Resume upload with bandwidth throttling |
Upload resumes at limited speed |
44 |
TC_RIT_044 |
Resume download with bandwidth throttling |
Download resumes at limited speed |
45 |
TC_RIT_045 |
Resume upload with file ownership change |
Error or resume fails |
46 |
TC_RIT_046 |
Resume download with file ownership change |
Error or resume fails |
47 |
TC_RIT_047 |
Resume upload with file system full |
Error: Disk full |
48 |
TC_RIT_048 |
Resume download with file system full |
Error: Disk full |
49 |
TC_RIT_049 |
Resume upload with file integrity check |
Resume only if integrity is preserved |
50 |
TC_RIT_050 |
Resume download with file integrity check |
Resume only if integrity is preserved |
File Integrity Verification - Testcases
S.No |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
TC_FIV_001 |
Verify checksum after file upload |
Checksum matches original |
2 |
TC_FIV_002 |
Verify checksum after file download |
Checksum matches source |
3 |
TC_FIV_003 |
Upload file with integrity check enabled |
File uploaded and verified |
4 |
TC_FIV_004 |
Download file with integrity check enabled |
File downloaded and verified |
5 |
TC_FIV_005 |
Upload file with corrupted data |
Error: Checksum mismatch |
6 |
TC_FIV_006 |
Download file with corrupted data |
Error: Checksum mismatch |
7 |
TC_FIV_007 |
Upload file with MD5 verification |
MD5 hash matches |
8 |
TC_FIV_008 |
Download file with SHA-256 verification |
SHA-256 hash matches |
9 |
TC_FIV_009 |
Upload file with no integrity check |
File uploaded without verification |
10 |
TC_FIV_010 |
Download file with no integrity check |
File downloaded without verification |
11 |
TC_FIV_011 |
Upload file with incorrect hash provided |
Error: Hash mismatch |
12 |
TC_FIV_012 |
Download file with incorrect hash provided |
Error: Hash mismatch |
13 |
TC_FIV_013 |
Upload file with hash verification disabled |
File uploaded without validation |
14 |
TC_FIV_014 |
Download file with hash verification disabled |
File downloaded without validation |
15 |
TC_FIV_015 |
Upload file with hash verification timeout |
Error: Verification timeout |
16 |
TC_FIV_016 |
Download file with hash verification timeout |
Error: Verification timeout |
17 |
TC_FIV_017 |
Upload file with hash mismatch alert enabled |
Alert triggered on mismatch |
18 |
TC_FIV_018 |
Download file with hash mismatch alert enabled |
Alert triggered on mismatch |
19 |
TC_FIV_019 |
Upload file with hash stored in metadata |
Metadata updated with hash |
20 |
TC_FIV_020 |
Download file with hash stored in metadata |
Hash retrieved and verified |
21 |
TC_FIV_021 |
Upload file with hash stored in separate file |
Hash file created |
22 |
TC_FIV_022 |
Download file with hash stored in separate file |
Hash file used for verification |
23 |
TC_FIV_023 |
Upload file with hash comparison on server |
Server validates hash |
24 |
TC_FIV_024 |
Download file with hash comparison on client |
Client validates hash |
25 |
TC_FIV_025 |
Upload file with hash comparison on both ends |
Both client and server validate |
26 |
TC_FIV_026 |
Upload file with hash mismatch logged |
Mismatch logged in audit |
27 |
TC_FIV_027 |
Download file with hash mismatch logged |
Mismatch logged in audit |
28 |
TC_FIV_028 |
Upload file with hash verification using CLI |
Verification successful |
29 |
TC_FIV_029 |
Download file with hash verification using CLI |
Verification successful |
30 |
TC_FIV_030 |
Upload file with hash verification using GUI |
Verification successful |
31 |
TC_FIV_031 |
Download file with hash verification using GUI |
Verification successful |
32 |
TC_FIV_032 |
Upload file with hash verification using script |
Verification successful |
33 |
TC_FIV_033 |
Download file with hash verification using script |
Verification successful |
34 |
TC_FIV_034 |
Upload file with hash verification under load |
Verification successful |
35 |
TC_FIV_035 |
Download file with hash verification under load |
Verification successful |
36 |
TC_FIV_036 |
Upload file with hash verification on large file |
Verification successful |
37 |
TC_FIV_037 |
Download file with hash verification on large file |
Verification successful |
38 |
TC_FIV_038 |
Upload file with hash verification on small file |
Verification successful |
39 |
TC_FIV_039 |
Download file with hash verification on small file |
Verification successful |
40 |
TC_FIV_040 |
Upload file with hash verification on encrypted file |
Verification successful |
41 |
TC_FIV_041 |
Download file with hash verification on encrypted file |
Verification successful |
42 |
TC_FIV_042 |
Upload file with hash verification on compressed file |
Verification successful |
43 |
TC_FIV_043 |
Download file with hash verification on compressed file |
Verification successful |
44 |
TC_FIV_044 |
Upload file with hash verification and retry on failure |
Retry triggered and success |
45 |
TC_FIV_045 |
Download file with hash verification and retry on failure |
Retry triggered and success |
46 |
TC_FIV_046 |
Upload file with hash verification and alert to admin |
Admin notified on failure |
47 |
TC_FIV_047 |
Download file with hash verification and alert to admin |
Admin notified on failure |
48 |
TC_FIV_048 |
Upload file with hash verification and audit trail |
Audit log updated |
49 |
TC_FIV_049 |
Download file with hash verification and audit trail |
Audit log updated |
50 |
TC_FIV_050 |
Upload and download with end-to-end integrity check |
File verified at both ends |
Logging and Auditing - Testcases
S.No |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
TC_LA_001 |
Enable logging on SFTP server |
Logging starts successfully |
2 |
TC_LA_002 |
Disable logging on SFTP server |
Logging stops successfully |
3 |
TC_LA_003 |
Upload a file and check log entry |
Upload event is logged |
4 |
TC_LA_004 |
Download a file and check log entry |
Download event is logged |
5 |
TC_LA_005 |
Delete a file and check log entry |
Deletion event is logged |
6 |
TC_LA_006 |
Rename a file and check log entry |
Rename event is logged |
7 |
TC_LA_007 |
Create a directory and check log entry |
Directory creation is logged |
8 |
TC_LA_008 |
Delete a directory and check log entry |
Directory deletion is logged |
9 |
TC_LA_009 |
Attempt unauthorized access |
Unauthorized attempt is logged |
10 |
TC_LA_010 |
Attempt to access non-existent file |
Error is logged |
11 |
TC_LA_011 |
Successful login attempt |
Login success is logged |
12 |
TC_LA_012 |
Failed login attempt |
Login failure is logged |
13 |
TC_LA_013 |
Session start and end |
Session lifecycle is logged |
14 |
TC_LA_014 |
Log client IP address |
IP address is recorded |
15 |
TC_LA_015 |
Log client username |
Username is recorded |
16 |
TC_LA_016 |
Log file size during transfer |
File size is recorded |
17 |
TC_LA_017 |
Log transfer duration |
Duration is recorded |
18 |
TC_LA_018 |
Log transfer protocol version |
Protocol version is recorded |
19 |
TC_LA_019 |
Log file path accessed |
Full path is recorded |
20 |
TC_LA_020 |
Log file permission changes |
Permission change is logged |
21 |
TC_LA_021 |
Log file ownership changes |
Ownership change is logged |
22 |
TC_LA_022 |
Log symbolic link access |
Symlink access is logged |
23 |
TC_LA_023 |
Log file access via relative path |
Relative path is logged |
24 |
TC_LA_024 |
Log file access via absolute path |
Absolute path is logged |
25 |
TC_LA_025 |
Log file access with path traversal attempt |
Attempt is logged and blocked |
26 |
TC_LA_026 |
Log file access with unicode characters |
Unicode filename is logged |
27 |
TC_LA_027 |
Log file access with special characters |
Special characters are logged |
28 |
TC_LA_028 |
Log file access with long filename |
Long filename is logged |
29 |
TC_LA_029 |
Log file access with invalid characters |
Invalid filename attempt is logged |
30 |
TC_LA_030 |
Log file overwrite event |
Overwrite is logged |
31 |
TC_LA_031 |
Log file integrity check result |
Integrity result is logged |
32 |
TC_LA_032 |
Log file transfer with encryption enabled |
Encrypted transfer is logged |
33 |
TC_LA_033 |
Log file transfer with compression enabled |
Compressed transfer is logged |
34 |
TC_LA_034 |
Log file transfer with resume enabled |
Resume event is logged |
35 |
TC_LA_035 |
Log file transfer with timeout |
Timeout is logged |
36 |
TC_LA_036 |
Log file transfer with retry |
Retry attempt is logged |
37 |
TC_LA_037 |
Log file transfer with checksum verification |
Checksum result is logged |
38 |
TC_LA_038 |
Log file transfer with bandwidth throttling |
Throttling is logged |
39 |
TC_LA_039 |
Log file transfer with session token |
Token usage is logged |
40 |
TC_LA_040 |
Log file transfer with MFA enabled |
MFA event is logged |
41 |
TC_LA_041 |
Log file transfer with expired credentials |
Expired session is logged |
42 |
TC_LA_042 |
Log file transfer with invalid credentials |
Invalid credentials are logged |
43 |
TC_LA_043 |
Log file transfer with audit trail export |
Audit trail is exported |
44 |
TC_LA_044 |
Log file transfer with audit trail disabled |
No audit entry is created |
45 |
TC_LA_045 |
Log file transfer with concurrent sessions |
Each session is logged separately |
46 |
TC_LA_046 |
Log file transfer with session interruption |
Interruption is logged |
47 |
TC_LA_047 |
Log file transfer with session reconnection |
Reconnection is logged |
48 |
TC_LA_048 |
Log file transfer with client disconnect |
Disconnect is logged |
49 |
TC_LA_049 |
Log file transfer with server restart |
Restart and recovery are logged |
50 |
TC_LA_050 |
Log file transfer with full audit compliance |
All actions are logged and verified |
Cross-Platform Compatibility - Testcases
S.No |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
TC_CP_001 |
Upload file from Windows to Linux server |
File uploaded successfully |
2 |
TC_CP_002 |
Download file from Linux server to Windows |
File downloaded successfully |
3 |
TC_CP_003 |
Upload file from macOS to Windows server |
File uploaded successfully |
4 |
TC_CP_004 |
Download file from Windows server to macOS |
File downloaded successfully |
5 |
TC_CP_005 |
Upload file from Linux to macOS server |
File uploaded successfully |
6 |
TC_CP_006 |
Download file from macOS server to Linux |
File downloaded successfully |
7 |
TC_CP_007 |
Upload file from Android to Linux server |
File uploaded successfully |
8 |
TC_CP_008 |
Download file from Linux server to Android |
File downloaded successfully |
9 |
TC_CP_009 |
Upload file from iOS to Windows server |
File uploaded successfully |
10 |
TC_CP_010 |
Download file from Windows server to iOS |
File downloaded successfully |
11 |
TC_CP_011 |
Upload file from embedded system to Linux server |
File uploaded successfully |
12 |
TC_CP_012 |
Download file from Linux server to embedded system |
File downloaded successfully |
13 |
TC_CP_013 |
Upload file with Windows-style line endings to Linux |
File uploaded with correct format |
14 |
TC_CP_014 |
Download file with Linux-style line endings to Windows |
File downloaded with correct format |
15 |
TC_CP_015 |
Upload file with UTF-8 encoding from macOS |
File encoding preserved |
16 |
TC_CP_016 |
Download file with UTF-8 encoding to Windows |
File encoding preserved |
17 |
TC_CP_017 |
Upload file with special characters from Linux |
Filename preserved |
18 |
TC_CP_018 |
Download file with special characters to Windows |
Filename preserved or sanitized |
19 |
TC_CP_019 |
Upload file with long filename from Windows |
File uploaded or error based on OS |
20 |
TC_CP_020 |
Download file with long filename to macOS |
File downloaded or truncated |
21 |
TC_CP_021 |
Upload file with case-sensitive name from Linux |
File uploaded with exact name |
22 |
TC_CP_022 |
Download file with case-sensitive name to Windows |
File may overwrite due to case insensitivity |
23 |
TC_CP_023 |
Upload file from Windows with hidden attribute |
File uploaded without hidden attribute |
24 |
TC_CP_024 |
Download file to Linux and check hidden status |
File downloaded as normal file |
25 |
TC_CP_025 |
Upload file from Android using SFTP app |
File uploaded successfully |
26 |
TC_CP_026 |
Download file to iOS using SFTP app |
File downloaded successfully |
27 |
TC_CP_027 |
Upload file from Windows using PowerShell |
File uploaded successfully |
28 |
TC_CP_028 |
Download file to Linux using shell script |
File downloaded successfully |
29 |
TC_CP_029 |
Upload file from macOS using Automator |
File uploaded successfully |
30 |
TC_CP_030 |
Download file to Windows using WinSCP |
File downloaded successfully |
31 |
TC_CP_031 |
Upload file from Linux using FileZilla |
File uploaded successfully |
32 |
TC_CP_032 |
Download file to macOS using Cyberduck |
File downloaded successfully |
33 |
TC_CP_033 |
Upload file from Windows with NTFS permissions |
Permissions not preserved |
34 |
TC_CP_034 |
Download file to Linux and check permissions |
Default Linux permissions applied |
35 |
TC_CP_035 |
Upload file from Linux with chmod 755 |
Permissions preserved on Linux server |
36 |
TC_CP_036 |
Download file to Windows and check execution |
File downloaded, execution depends on OS |
37 |
TC_CP_037 |
Upload file from iOS with sandbox restrictions |
File uploaded if app has access |
38 |
TC_CP_038 |
Download file to Android with storage permissions |
File downloaded successfully |
39 |
TC_CP_039 |
Upload file from Windows with Unicode filename |
Filename preserved or converted |
40 |
TC_CP_040 |
Download file to Linux with Unicode filename |
Filename preserved |
41 |
TC_CP_041 |
Upload file from Linux with symbolic link |
Link uploaded or resolved |
42 |
TC_CP_042 |
Download file to Windows with symbolic link |
Link may be ignored or resolved |
43 |
TC_CP_043 |
Upload file from macOS with resource fork |
Resource fork ignored or stripped |
44 |
TC_CP_044 |
Download file to Windows and check metadata |
Metadata not preserved |
45 |
TC_CP_045 |
Upload file from Linux with ACLs |
ACLs not preserved |
46 |
TC_CP_046 |
Download file to Windows with ACLs |
ACLs not applied |
47 |
TC_CP_047 |
Upload file from Windows with alternate data streams |
ADS ignored or stripped |
48 |
TC_CP_048 |
Download file to Linux and check for ADS |
No ADS present |
49 |
TC_CP_049 |
Upload file from Linux with extended attributes |
Attributes not preserved |
50 |
TC_CP_050 |
Download file to macOS and check extended attributes |
Attributes not preserved |
Firewall-Friendly - Testcases
S.No |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
TC_FW_001 |
Connect to SFTP server on default port 22 |
Connection successful |
2 |
TC_FW_002 |
Block port 22 on firewall |
Connection fails |
3 |
TC_FW_003 |
Allow port 22 on firewall |
Connection successful |
4 |
TC_FW_004 |
Use SFTP over SSH through firewall |
Connection successful |
5 |
TC_FW_005 |
Attempt SFTP connection on non-standard port |
Connection fails unless port is open |
6 |
TC_FW_006 |
Configure firewall to allow custom SFTP port |
Connection successful |
7 |
TC_FW_007 |
Use SFTP with NAT traversal |
Connection successful |
8 |
TC_FW_008 |
Use SFTP behind corporate firewall |
Connection successful if port 22 is open |
9 |
TC_FW_009 |
Use SFTP with stateful firewall inspection |
Connection successful |
10 |
TC_FW_010 |
Use SFTP with stateless firewall |
Connection successful if rules are correct |
11 |
TC_FW_011 |
Use SFTP with deep packet inspection firewall |
Connection allowed if SSH is permitted |
12 |
TC_FW_012 |
Use SFTP with application-layer firewall |
Connection allowed if SFTP is whitelisted |
13 |
TC_FW_013 |
Use SFTP with port forwarding enabled |
Connection successful |
14 |
TC_FW_014 |
Use SFTP with port forwarding disabled |
Connection fails |
15 |
TC_FW_015 |
Use SFTP with proxy server |
Connection successful if proxy allows SSH |
16 |
TC_FW_016 |
Use SFTP with VPN tunnel |
Connection successful |
17 |
TC_FW_017 |
Use SFTP with IP whitelisting |
Connection allowed for whitelisted IPs |
18 |
TC_FW_018 |
Use SFTP with IP blacklisting |
Connection blocked for blacklisted IPs |
19 |
TC_FW_019 |
Use SFTP with dynamic IP client |
Connection successful if firewall allows |
20 |
TC_FW_020 |
Use SFTP with static IP client |
Connection successful |
21 |
TC_FW_021 |
Use SFTP with firewall logging enabled |
Connection logged |
22 |
TC_FW_022 |
Use SFTP with firewall logging disabled |
No connection logs |
23 |
TC_FW_023 |
Use SFTP with IDS/IPS enabled |
Connection allowed unless flagged |
24 |
TC_FW_024 |
Use SFTP with IDS/IPS blocking SSH |
Connection blocked |
25 |
TC_FW_025 |
Use SFTP with SSH key authentication |
Connection successful |
26 |
TC_FW_026 |
Use SFTP with password authentication |
Connection successful |
27 |
TC_FW_027 |
Use SFTP with brute-force protection |
Multiple failed attempts blocked |
28 |
TC_FW_028 |
Use SFTP with rate limiting |
Excessive connections throttled |
29 |
TC_FW_029 |
Use SFTP with firewall session timeout |
Idle session terminated |
30 |
TC_FW_030 |
Use SFTP with firewall session persistence |
Session maintained |
31 |
TC_FW_031 |
Use SFTP with firewall rule misconfiguration |
Connection fails |
32 |
TC_FW_032 |
Use SFTP with correct firewall rule set |
Connection successful |
33 |
TC_FW_033 |
Use SFTP with IPv6 through firewall |
Connection successful |
34 |
TC_FW_034 |
Use SFTP with IPv4 through firewall |
Connection successful |
35 |
TC_FW_035 |
Use SFTP with dual-stack network |
Connection successful |
36 |
TC_FW_036 |
Use SFTP with firewall port range restriction |
Connection successful if port 22 is allowed |
37 |
TC_FW_037 |
Use SFTP with firewall port scanning detection |
Connection may be flagged |
38 |
TC_FW_038 |
Use SFTP with firewall alerting enabled |
Alerts generated on connection |
39 |
TC_FW_039 |
Use SFTP with firewall alerting disabled |
No alerts generated |
40 |
TC_FW_040 |
Use SFTP with firewall in learning mode |
Connection allowed and rule suggested |
41 |
TC_FW_041 |
Use SFTP with firewall in strict mode |
Connection blocked unless explicitly allowed |
42 |
TC_FW_042 |
Use SFTP with firewall rule for specific user |
Connection allowed for that user |
43 |
TC_FW_043 |
Use SFTP with firewall rule for specific group |
Connection allowed for that group |
44 |
TC_FW_044 |
Use SFTP with firewall rule for specific time window |
Connection allowed during allowed time |
45 |
TC_FW_045 |
Use SFTP with firewall rule for specific file types |
Connection allowed regardless of file type |
46 |
TC_FW_046 |
Use SFTP with firewall rule for specific domains |
Connection allowed if domain is permitted |
47 |
TC_FW_047 |
Use SFTP with firewall rule for specific protocols |
Connection allowed for SSH/SFTP |
48 |
TC_FW_048 |
Use SFTP with firewall rule for specific ports |
Connection allowed if port 22 is open |
49 |
TC_FW_049 |
Use SFTP with firewall rule for specific MAC addresses |
Connection allowed for listed MACs |
50 |
TC_FW_050 |
Use SFTP with firewall rule audit trail |
All connection attempts logged and reviewed |
Compression Support - Testcases
S.No |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
TC_CS_001 |
Enable compression on SFTP client |
Compression enabled successfully |
2 |
TC_CS_002 |
Disable compression on SFTP client |
Compression disabled successfully |
3 |
TC_CS_003 |
Upload file with compression enabled |
File uploaded with reduced size |
4 |
TC_CS_004 |
Download file with compression enabled |
File downloaded with reduced size |
5 |
TC_CS_005 |
Upload file with compression disabled |
File uploaded without compression |
6 |
TC_CS_006 |
Download file with compression disabled |
File downloaded without compression |
7 |
TC_CS_007 |
Upload large text file with compression |
Significant size reduction |
8 |
TC_CS_008 |
Upload binary file with compression |
Minimal or no size reduction |
9 |
TC_CS_009 |
Upload already compressed file (e.g., .zip) |
No further compression |
10 |
TC_CS_010 |
Download already compressed file |
File downloaded as-is |
11 |
TC_CS_011 |
Upload file with compression and verify integrity |
File integrity maintained |
12 |
TC_CS_012 |
Download file with compression and verify integrity |
File integrity maintained |
13 |
TC_CS_013 |
Upload file with compression and resume transfer |
Transfer resumes with compression |
14 |
TC_CS_014 |
Download file with compression and resume transfer |
Transfer resumes with compression |
15 |
TC_CS_015 |
Upload file with compression and verify speed |
Transfer is faster for compressible files |
16 |
TC_CS_016 |
Download file with compression and verify speed |
Transfer is faster for compressible files |
17 |
TC_CS_017 |
Upload file with compression and slow network |
Transfer completes with reduced bandwidth |
18 |
TC_CS_018 |
Download file with compression and slow network |
Transfer completes with reduced bandwidth |
19 |
TC_CS_019 |
Upload file with compression and packet loss |
Transfer retries and completes |
20 |
TC_CS_020 |
Download file with compression and packet loss |
Transfer retries and completes |
21 |
TC_CS_021 |
Upload file with compression and timeout |
Error: Transfer timeout |
22 |
TC_CS_022 |
Download file with compression and timeout |
Error: Transfer timeout |
23 |
TC_CS_023 |
Upload file with compression and encryption |
File uploaded securely and compressed |
24 |
TC_CS_024 |
Download file with compression and encryption |
File downloaded securely and compressed |
25 |
TC_CS_025 |
Upload file with compression and audit logging |
Compression event logged |
26 |
TC_CS_026 |
Download file with compression and audit logging |
Compression event logged |
27 |
TC_CS_027 |
Upload file with compression using GUI client |
File uploaded with compression |
28 |
TC_CS_028 |
Download file with compression using GUI client |
File downloaded with compression |
29 |
TC_CS_029 |
Upload file with compression using CLI client |
File uploaded with compression |
30 |
TC_CS_030 |
Download file with compression using CLI client |
File downloaded with compression |
31 |
TC_CS_031 |
Upload file with compression using script |
File uploaded with compression |
32 |
TC_CS_032 |
Download file with compression using script |
File downloaded with compression |
33 |
TC_CS_033 |
Upload file with compression and verify CPU usage |
CPU usage increases during compression |
34 |
TC_CS_034 |
Download file with compression and verify CPU usage |
CPU usage increases during decompression |
35 |
TC_CS_035 |
Upload file with compression and verify memory usage |
Memory usage within acceptable limits |
36 |
TC_CS_036 |
Download file with compression and verify memory usage |
Memory usage within acceptable limits |
37 |
TC_CS_037 |
Upload file with compression and verify disk usage |
Disk usage reduced on server |
38 |
TC_CS_038 |
Download file with compression and verify disk usage |
Disk usage reduced on client |
39 |
TC_CS_039 |
Upload file with compression and verify transfer logs |
Compression details logged |
40 |
TC_CS_040 |
Download file with compression and verify transfer logs |
Compression details logged |
41 |
TC_CS_041 |
Upload file with compression and verify compatibility |
Compatible with standard SFTP servers |
42 |
TC_CS_042 |
Download file with compression and verify compatibility |
Compatible with standard SFTP clients |
43 |
TC_CS_043 |
Upload file with compression and verify fallback |
Falls back to uncompressed if unsupported |
44 |
TC_CS_044 |
Download file with compression and verify fallback |
Falls back to uncompressed if unsupported |
45 |
TC_CS_045 |
Upload file with compression and verify error handling |
Errors handled gracefully |
46 |
TC_CS_046 |
Download file with compression and verify error handling |
Errors handled gracefully |
47 |
TC_CS_047 |
Upload file with compression and verify retry logic |
Retries succeed with compression |
48 |
TC_CS_048 |
Download file with compression and verify retry logic |
Retries succeed with compression |
49 |
TC_CS_049 |
Upload file with compression and verify session persistence |
Session remains stable |
50 |
TC_CS_050 |
Download file with compression and verify session persistence |
Session remains stable |
Symbolic Link Handling - Testcases
S.No |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
TC_SL_001 |
List symbolic link in directory |
Symbolic link is listed |
2 |
TC_SL_002 |
Upload a symbolic link |
Link uploaded or resolved based on config |
3 |
TC_SL_003 |
Download a symbolic link |
Target file downloaded or link downloaded |
4 |
TC_SL_004 |
Delete a symbolic link |
Link deleted, target remains |
5 |
TC_SL_005 |
Rename a symbolic link |
Link renamed successfully |
6 |
TC_SL_006 |
Create a symbolic link via SFTP (if supported) |
Link created or error if unsupported |
7 |
TC_SL_007 |
Access symbolic link pointing to file |
Target file accessed |
8 |
TC_SL_008 |
Access symbolic link pointing to directory |
Target directory accessed |
9 |
TC_SL_009 |
Access broken symbolic link |
Error: No such file or directory |
10 |
TC_SL_010 |
Access symbolic link with relative path |
Link resolved correctly |
11 |
TC_SL_011 |
Access symbolic link with absolute path |
Link resolved correctly |
12 |
TC_SL_012 |
Access symbolic link with circular reference |
Error: Too many levels of symbolic links |
13 |
TC_SL_013 |
Upload symbolic link to file |
Target file uploaded or link ignored |
14 |
TC_SL_014 |
Upload symbolic link to directory |
Target directory uploaded or link ignored |
15 |
TC_SL_015 |
Download symbolic link to file |
Target file downloaded |
16 |
TC_SL_016 |
Download symbolic link to directory |
Target directory downloaded |
17 |
TC_SL_017 |
Follow symbolic link during file transfer |
Target file transferred |
18 |
TC_SL_018 |
Do not follow symbolic link during file transfer |
Link transferred as-is or skipped |
19 |
TC_SL_019 |
Change permissions of symbolic link |
Permissions of link or target updated |
20 |
TC_SL_020 |
Change ownership of symbolic link |
Ownership of link or target updated |
21 |
TC_SL_021 |
List symbolic link with ls -l |
Link and target path shown |
22 |
TC_SL_022 |
Resolve symbolic link using readlink |
Target path returned |
23 |
TC_SL_023 |
Symbolic link to non-SFTP accessible path |
Error or access denied |
24 |
TC_SL_024 |
Symbolic link to restricted file |
Access denied |
25 |
TC_SL_025 |
Symbolic link to restricted directory |
Access denied |
26 |
TC_SL_026 |
Symbolic link with special characters |
Link handled correctly |
27 |
TC_SL_027 |
Symbolic link with unicode characters |
Link handled correctly |
28 |
TC_SL_028 |
Symbolic link with long name |
Link handled or error if too long |
29 |
TC_SL_029 |
Symbolic link with invalid characters |
Error: Invalid name |
30 |
TC_SL_030 |
Symbolic link in hidden directory |
Link accessed successfully |
31 |
TC_SL_031 |
Symbolic link to hidden file |
Hidden file accessed |
32 |
TC_SL_032 |
Symbolic link to file with no permissions |
Error: Permission denied |
33 |
TC_SL_033 |
Symbolic link to file with read-only permissions |
File accessed read-only |
34 |
TC_SL_034 |
Symbolic link to file with write-only permissions |
File accessed write-only |
35 |
TC_SL_035 |
Symbolic link to file with execute-only permissions |
File executed if allowed |
36 |
TC_SL_036 |
Symbolic link to file on different filesystem |
File accessed if mount is available |
37 |
TC_SL_037 |
Symbolic link to file on network share |
File accessed if share is mounted |
38 |
TC_SL_038 |
Symbolic link to file on removable media |
File accessed if media is mounted |
39 |
TC_SL_039 |
Symbolic link to file with ACLs |
ACLs respected |
40 |
TC_SL_040 |
Symbolic link to file with extended attributes |
Attributes preserved or ignored |
41 |
TC_SL_041 |
Symbolic link to file with audit logging enabled |
Access logged |
42 |
TC_SL_042 |
Symbolic link to file with audit logging disabled |
Access not logged |
43 |
TC_SL_043 |
Symbolic link to file with encryption |
Encrypted file accessed |
44 |
TC_SL_044 |
Symbolic link to file with compression |
Compressed file accessed |
45 |
TC_SL_045 |
Symbolic link to file with integrity check |
Integrity verified |
46 |
TC_SL_046 |
Symbolic link to file with backup enabled |
Backup triggered |
47 |
TC_SL_047 |
Symbolic link to file with version control |
Version tracked |
48 |
TC_SL_048 |
Symbolic link to file with checksum validation |
Checksum verified |
49 |
TC_SL_049 |
Symbolic link to file with session timeout |
Error: Session expired |
50 |
TC_SL_050 |
Symbolic link to file with MFA required |
Access granted after MFA |
Atomic Operations - Testcases
S.No |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
TC_AO_001 |
Upload a file atomically |
File appears only after complete upload |
2 |
TC_AO_002 |
Download a file atomically |
File is fully downloaded or not at all |
3 |
TC_AO_003 |
Rename a file atomically |
File renamed without intermediate state |
4 |
TC_AO_004 |
Delete a file atomically |
File is removed in a single operation |
5 |
TC_AO_005 |
Move a file atomically |
File moved without partial state |
6 |
TC_AO_006 |
Upload fails mid-transfer |
No partial file left on server |
7 |
TC_AO_007 |
Download fails mid-transfer |
No partial file saved on client |
8 |
TC_AO_008 |
Rename fails mid-operation |
Original file remains unchanged |
9 |
TC_AO_009 |
Delete fails mid-operation |
File remains intact |
10 |
TC_AO_010 |
Move fails mid-operation |
File remains in original location |
11 |
TC_AO_011 |
Upload file with retry logic |
File uploaded once, no duplicates |
12 |
TC_AO_012 |
Download file with retry logic |
File downloaded once, no corruption |
13 |
TC_AO_013 |
Upload file with checksum validation |
File committed only if checksum matches |
14 |
TC_AO_014 |
Download file with checksum validation |
File saved only if checksum matches |
15 |
TC_AO_015 |
Upload file with temporary name |
File renamed to final name after success |
16 |
TC_AO_016 |
Download file to temporary name |
File renamed to final name after success |
17 |
TC_AO_017 |
Upload file with lock mechanism |
File locked during transfer |
18 |
TC_AO_018 |
Download file with lock mechanism |
File locked during transfer |
19 |
TC_AO_019 |
Concurrent upload attempts |
Only one upload succeeds |
20 |
TC_AO_020 |
Concurrent download attempts |
All downloads succeed without conflict |
21 |
TC_AO_021 |
Atomic write to existing file |
File replaced only after full write |
22 |
TC_AO_022 |
Atomic append to file |
Append operation completes fully or not at all |
23 |
TC_AO_023 |
Atomic directory creation |
Directory appears only after full creation |
24 |
TC_AO_024 |
Atomic directory deletion |
Directory removed only if empty |
25 |
TC_AO_025 |
Atomic permission change |
Permissions updated in a single step |
26 |
TC_AO_026 |
Atomic ownership change |
Ownership updated without intermediate state |
27 |
TC_AO_027 |
Atomic symbolic link creation |
Link appears only after full creation |
28 |
TC_AO_028 |
Atomic symbolic link deletion |
Link removed in a single operation |
29 |
TC_AO_029 |
Atomic file overwrite |
New file replaces old one completely |
30 |
TC_AO_030 |
Atomic file rollback on failure |
Original file restored on failure |
31 |
TC_AO_031 |
Atomic file sync with remote |
File updated only after full sync |
32 |
TC_AO_032 |
Atomic file transfer with audit logging |
Log entry created only after success |
33 |
TC_AO_033 |
Atomic file transfer with encryption |
File encrypted and transferred atomically |
34 |
TC_AO_034 |
Atomic file transfer with compression |
File compressed and transferred atomically |
35 |
TC_AO_035 |
Atomic file transfer with integrity check |
File committed only if integrity verified |
36 |
TC_AO_036 |
Atomic file transfer with session timeout |
Transfer aborted cleanly on timeout |
37 |
TC_AO_037 |
Atomic file transfer with network failure |
No partial file left |
38 |
TC_AO_038 |
Atomic file transfer with disk full |
Transfer fails without partial file |
39 |
TC_AO_039 |
Atomic file transfer with permission error |
Transfer fails without changes |
40 |
TC_AO_040 |
Atomic file transfer with concurrent session |
File integrity maintained |
41 |
TC_AO_041 |
Atomic file transfer with interrupted session |
Transfer resumes or rolls back |
42 |
TC_AO_042 |
Atomic file transfer with audit trail export |
Audit trail reflects only successful operations |
43 |
TC_AO_043 |
Atomic file transfer with version control |
New version committed only after success |
44 |
TC_AO_044 |
Atomic file transfer with backup enabled |
Backup created only after successful transfer |
45 |
TC_AO_045 |
Atomic file transfer with rollback support |
System reverts to previous state on failure |
46 |
TC_AO_046 |
Atomic file transfer with temporary storage |
File moved to final location after success |
47 |
TC_AO_047 |
Atomic file transfer with file lock release |
Lock released only after successful transfer |
48 |
TC_AO_048 |
Atomic file transfer with file lock timeout |
Lock expires and file remains unchanged |
49 |
TC_AO_049 |
Atomic file transfer with user notification |
Notification sent only after success |
50 |
TC_AO_050 |
Atomic file transfer with logging disabled |
No logs created, file still transferred atomically |
Session Management - Testcases
S.No |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
TC_SM_001 |
Establish a new SFTP session |
Session established successfully |
2 |
TC_SM_002 |
Terminate an active SFTP session |
Session terminated gracefully |
3 |
TC_SM_003 |
Reconnect after session timeout |
New session established |
4 |
TC_SM_004 |
Resume session after network interruption |
Session resumes or reconnects |
5 |
TC_SM_005 |
Attempt operation after session timeout |
Error: Session expired |
6 |
TC_SM_006 |
Attempt operation after session termination |
Error: Session not found |
7 |
TC_SM_007 |
Maintain session during file transfer |
Session remains active |
8 |
TC_SM_008 |
Maintain session during idle period |
Session remains active if timeout not reached |
9 |
TC_SM_009 |
Auto-disconnect after idle timeout |
Session terminated automatically |
10 |
TC_SM_010 |
Configure custom session timeout |
Timeout applied as configured |
11 |
TC_SM_011 |
Attempt multiple concurrent sessions |
All sessions established successfully |
12 |
TC_SM_012 |
Exceed maximum allowed sessions |
Error: Too many sessions |
13 |
TC_SM_013 |
Monitor session activity logs |
Session events logged correctly |
14 |
TC_SM_014 |
Authenticate session with valid credentials |
Session established |
15 |
TC_SM_015 |
Authenticate session with invalid credentials |
Error: Authentication failed |
16 |
TC_SM_016 |
Authenticate session with expired credentials |
Error: Session denied |
17 |
TC_SM_017 |
Authenticate session with MFA enabled |
Session established after MFA |
18 |
TC_SM_018 |
Attempt session with revoked credentials |
Error: Access denied |
19 |
TC_SM_019 |
Attempt session with locked account |
Error: Account locked |
20 |
TC_SM_020 |
Attempt session with IP restriction |
Error: IP not allowed |
21 |
TC_SM_021 |
Attempt session with MAC restriction |
Error: MAC not allowed |
22 |
TC_SM_022 |
Attempt session with invalid SSH key |
Error: Key rejected |
23 |
TC_SM_023 |
Establish session with valid SSH key |
Session established |
24 |
TC_SM_024 |
Establish session with password authentication |
Session established |
25 |
TC_SM_025 |
Establish session with key-based authentication |
Session established |
26 |
TC_SM_026 |
Establish session with both key and password |
Session established |
27 |
TC_SM_027 |
Log session start and end times |
Timestamps recorded |
28 |
TC_SM_028 |
Log session IP and user details |
Session metadata logged |
29 |
TC_SM_029 |
Log session file activity |
File operations logged |
30 |
TC_SM_030 |
Log session errors |
Errors logged correctly |
31 |
TC_SM_031 |
Log session disconnect reason |
Reason recorded |
32 |
TC_SM_032 |
Attempt session with invalid protocol version |
Error: Protocol mismatch |
33 |
TC_SM_033 |
Attempt session with unsupported cipher |
Error: Cipher not supported |
34 |
TC_SM_034 |
Attempt session with unsupported compression |
Error: Compression not supported |
35 |
TC_SM_035 |
Attempt session with unsupported MAC |
Error: MAC not supported |
36 |
TC_SM_036 |
Attempt session with expired token |
Error: Token expired |
37 |
TC_SM_037 |
Attempt session with invalid token |
Error: Invalid token |
38 |
TC_SM_038 |
Attempt session with expired certificate |
Error: Certificate expired |
39 |
TC_SM_039 |
Attempt session with revoked certificate |
Error: Certificate revoked |
40 |
TC_SM_040 |
Attempt session with valid certificate |
Session established |
41 |
TC_SM_041 |
Attempt session with firewall blocking port |
Error: Connection refused |
42 |
TC_SM_042 |
Attempt session with proxy enabled |
Session established via proxy |
43 |
TC_SM_043 |
Attempt session with VPN enabled |
Session established via VPN |
44 |
TC_SM_044 |
Attempt session with bandwidth throttling |
Session established with limited speed |
45 |
TC_SM_045 |
Attempt session with high latency |
Session established with delay |
46 |
TC_SM_046 |
Attempt session with packet loss |
Session retries and succeeds |
47 |
TC_SM_047 |
Attempt session with encryption enabled |
Session encrypted |
48 |
TC_SM_048 |
Attempt session with compression enabled |
Session established with compression |
49 |
TC_SM_049 |
Attempt session with audit trail enabled |
Session logged for auditing |
50 |
TC_SM_050 |
Attempt session with audit trail disabled |
Session not logged |
Integration with SSH - Testcases
S.No |
Test Case |
Description |
Expected Result |
---|---|---|---|
1 |
TC_SSH_001 |
Establish SFTP session over SSH |
Session established securely |
2 |
TC_SSH_002 |
Use SSH key-based authentication |
Session authenticated using SSH key |
3 |
TC_SSH_003 |
Use SSH password-based authentication |
Session authenticated using password |
4 |
TC_SSH_004 |
Use SSH with public-private key pair |
Session established with key pair |
5 |
TC_SSH_005 |
Use SSH with invalid private key |
Error: Authentication failed |
6 |
TC_SSH_006 |
Use SSH with expired key |
Error: Key expired |
7 |
TC_SSH_007 |
Use SSH with revoked key |
Error: Key revoked |
8 |
TC_SSH_008 |
Use SSH with passphrase-protected key |
Prompt for passphrase and connect |
9 |
TC_SSH_009 |
Use SSH with incorrect passphrase |
Error: Authentication failed |
10 |
TC_SSH_010 |
Use SSH with known_hosts verification |
Host verified and session established |
11 |
TC_SSH_011 |
Use SSH with unknown host |
Warning or error based on config |
12 |
TC_SSH_012 |
Use SSH with strict host key checking |
Connection denied if host key mismatch |
13 |
TC_SSH_013 |
Use SSH with disabled host key checking |
Connection allowed without verification |
14 |
TC_SSH_014 |
Use SSH with multiple authentication methods |
Session established using fallback |
15 |
TC_SSH_015 |
Use SSH with MFA enabled |
Session established after MFA |
16 |
TC_SSH_016 |
Use SSH with certificate-based authentication |
Session established with certificate |
17 |
TC_SSH_017 |
Use SSH with expired certificate |
Error: Certificate expired |
18 |
TC_SSH_018 |
Use SSH with revoked certificate |
Error: Certificate revoked |
19 |
TC_SSH_019 |
Use SSH with valid certificate |
Session established |
20 |
TC_SSH_020 |
Use SSH with port forwarding |
Session established with port forwarding |
21 |
TC_SSH_021 |
Use SSH with X11 forwarding disabled |
Session established without X11 |
22 |
TC_SSH_022 |
Use SSH with compression enabled |
Session established with compression |
23 |
TC_SSH_023 |
Use SSH with compression disabled |
Session established without compression |
24 |
TC_SSH_024 |
Use SSH with custom port |
Session established on custom port |
25 |
TC_SSH_025 |
Use SSH with default port 22 |
Session established |
26 |
TC_SSH_026 |
Use SSH with firewall blocking port 22 |
Error: Connection refused |
27 |
TC_SSH_027 |
Use SSH with VPN |
Session established over VPN |
28 |
TC_SSH_028 |
Use SSH with proxy |
Session established through proxy |
29 |
TC_SSH_029 |
Use SSH with IPv6 |
Session established over IPv6 |
30 |
TC_SSH_030 |
Use SSH with IPv4 |
Session established over IPv4 |
31 |
TC_SSH_031 |
Use SSH with DNS resolution |
Host resolved and session established |
32 |
TC_SSH_032 |
Use SSH with IP address |
Session established using IP |
33 |
TC_SSH_033 |
Use SSH with session timeout |
Session terminated after timeout |
34 |
TC_SSH_034 |
Use SSH with keep-alive enabled |
Session remains active |
35 |
TC_SSH_035 |
Use SSH with keep-alive disabled |
Session may timeout |
36 |
TC_SSH_036 |
Use SSH with idle timeout |
Session terminated after inactivity |
37 |
TC_SSH_037 |
Use SSH with audit logging enabled |
Session activities logged |
38 |
TC_SSH_038 |
Use SSH with audit logging disabled |
No session logs generated |
39 |
TC_SSH_039 |
Use SSH with brute-force protection |
Multiple failed attempts blocked |
40 |
TC_SSH_040 |
Use SSH with rate limiting |
Excessive connections throttled |
41 |
TC_SSH_041 |
Use SSH with session multiplexing |
Multiple sessions share one connection |
42 |
TC_SSH_042 |
Use SSH with session isolation |
Each session uses separate connection |
43 |
TC_SSH_043 |
Use SSH with encryption algorithm AES |
Session encrypted with AES |
44 |
TC_SSH_044 |
Use SSH with encryption algorithm ChaCha20 |
Session encrypted with ChaCha20 |
45 |
TC_SSH_045 |
Use SSH with unsupported cipher |
Error: Cipher not supported |
46 |
TC_SSH_046 |
Use SSH with MAC algorithm SHA-2 |
Session integrity verified |
47 |
TC_SSH_047 |
Use SSH with unsupported MAC |
Error: MAC not supported |
48 |
TC_SSH_048 |
Use SSH with banner message |
Banner displayed on connection |
49 |
TC_SSH_049 |
Use SSH with login restrictions |
Access denied based on policy |
50 |
TC_SSH_050 |
Use SSH with successful file transfer |
File transferred securely over SSH |
Reference links