Testomatio - Test Management for Codeception
Works with SFTP/FTP servers.
In order to test the contents of a specific file stored on any remote FTP/SFTP system this module downloads a temporary file to the local system. The temporary directory is defined by default as
to specify a different directory set the tmp config option to your chosen path.
Don’t forget to create the folder and ensure its writable.
Supported and tested FTP types are:
Connection uses php build in FTP client for FTP, connection to SFTP uses phpseclib pulled in using composer.
For SFTP, add phpseclib to require list.
modules:
enabled: [FTP]
config:
FTP:
type: ftp
host: '127.0.0.1'
port: 21
timeout: 120
user: 'root'
password: 'root'
key: ~/.ssh/id_rsa
tmp: 'tests/_data/ftp'
passive: true
cleanup: false
modules:
enabled: [FTP]
config:
FTP:
type: sftp
host: '127.0.0.1'
port: 22
timeout: 120
user: 'root'
password: 'root'
key: ''
tmp: 'tests/_data/ftp'
cleanup: false
This module extends the Filesystem module, file contents methods are inherited from this module.
param string
$pathreturn void
Enters a directory on the ftp system - FTP root directory is used by default
param string
$dirnamereturn void
Erases directory contents on the FTP/SFTP server
param string
$srcparam string
$dstreturn void
Currently not supported in this module, overwrite inherited method
param string
$dirnamereturn void
Deletes directory with all subdirectories on the remote FTP/SFTP server
param string
$filenamereturn void
Deletes a file on the remote FTP/SFTP system
return void
Deletes a file
param string
$filenameparam string
$pathreturn void
Checks if file does not exist in path on the remote FTP/SFTP system
param string
$regexparam string
$pathreturn void
Checks if file does not exist in path on the remote FTP/SFTP system, using regular expression as filename.
DOES NOT OPEN the file when it’s exists
param string
$textreturn void
Checks If opened file doesn’t contain text
in it
return string
Grabber method to return current working directory
param string
$pathparam bool
$ignore - suppress ‘.’, ‘..’ and ‘.thumbs.db’return int
Grabber method for returning file/folders count in directory
param string
$pathparam bool
$ignore - suppress ‘.’, ‘..’ and ‘.thumbs.db’return array
Grabber method for returning file/folders listing in an array
param string
$filenamereturn int
Grabber method to return last modified timestamp
param string
$filenamereturn int
Grabber method to return file size
param string
$userparam string
$passwordreturn void
Change the logged in user mid-way through your test, this closes the current connection to the server and initialises and new connection.
On initiation of this modules you are automatically logged into the server using the specified config options or defaulted to anonymous user if not provided.
param string
$dirnamereturn void
Create a directory on the server
param string
$filenamereturn void
Opens a file (downloads from the remote FTP/SFTP system to a tmp directory for processing) and stores it’s content.
Usage:
param string
$dirnameparam string
$renamereturn void
Rename/Move directory on the FTP/SFTP server
param string
$filenameparam string
$renamereturn void
Rename/Move file on the FTP/SFTP server
param string
$textreturn void
Checks the strict matching of file contents.
Unlike seeInThisFile
will fail if file has something more than expected lines.
Better to use with HEREDOC strings.
Matching is done after removing “\r” chars from file content.
param string
$filenameparam string
$pathreturn void
Checks if file exists in path on the remote FTP/SFTP system.
DOES NOT OPEN the file when it’s exists
param string
$regexparam string
$pathreturn void
Checks if file exists in path on the remote FTP/SFTP system, using regular expression as filename.
DOES NOT OPEN the file when it’s exists
param string
$textreturn void
Checks If opened file has text
in it.
Usage:
param int
$number New linesreturn void
Checks If opened file has the number
of new lines.
Usage:
param string
$regexreturn void
Checks that contents of currently opened file matches $regex
param string
$filenameparam string
$contentsreturn void
Saves contents to tmp file and uploads the FTP/SFTP system.
Overwrites current file on server if exists.