自主FTP服务器需求说明书

首先,我们来了解一些关于软件测试的概念。
软件测试的目的和原则
目的:验证软件有没有问题。
原则:以客户为中心,遵循软件测试的规范、流程、标准和安装。

需求
需求一般分为用户需求和软件需求。
用户需求:可以简单理解为甲方提出的需求,如果没有甲方,那么就是终端用户使用产品必须要完成的任务。
软件需求:也叫功能需求,会详细描述开发人员必须实现的软件功能。

对于自主FTP服务器,我们编写了如下软件需求规格说明书。

一、用户需求

支持用户登录,显示当前文件和子目录,以及文件的上传和下载等操作。

二、软件需求

2.1 用户登录

2.1.1 功能概述

用户可以在服务器端保存可以已经注册的用户名和密码,在登录时进行验证,验证成功就可以登录。

2.1.2 用户角色

已经注册的用户。

2.1.3 前置条件

该模块为用户进行注册的前置模块。

2.1.4 输入

输入格式:

Name:用户名
Password:密码

输入条件:输入已经注册的用户名和密码。

2.1.5 处理

当我们输入的用户名和密码保存在.auth文件中,服务器端会进行用户名和密码的检测,如果登录成功,会提示用户Sucessful login,并可以使用文件操作功能。如果登录失败,会提示用户Invalid username/password。

2.1.5.1 基本事件流

1、用户登录时,按照格式要求输入用户名和密码;
2、用户密码采用不回显的方式,保护用户个人信息。

2.1.5.2 扩展事件流

考虑用户注册时输入格式的不同,将可能出现的情况考虑在内,最后统一化管理。

2.1.5.3 异常事件流

如果登录失败,会显示登录失败的原因,会退出服务器,用户可能根据提示进行重新登录。

2.1.6 输出

用户登录成功。

2.1.7 后置条件

该模块为用户进行文件操作(上传和下载等)的前置模块。

2.2 显示子目录和文件

2.2.1 功能概述

返回指定目录下的文件和子目录。

2.2.2 用户角色

已经注册的用户。

2.2.3 前置条件

用户登录成功,服务器连接成功。

2.2.4 输入

输入格式:

ls / ls 指定的目录名

2.2.5 处理

服务器连接成功后,将指定文件下的文件和子目录以ls -l的格式显示,并重定向到一个文件中。

2.2.5.1 基本事件流

1、客户端尝试与服务器端建立连接,打印响应码,后接一行文本提示消息。
2、客户端连接上服务器后,将ls命令发送到服务器。
3、服务器处理ls命令,将该命令的响应码发送给客户端。
4、客户端收到响应码,创建数据监听窗口,将端口信息发送给服务器,服务器创建一个数据端口,连接客户端的的数据监听端口。
5、客户端接受连接,客户端告诉服务器连接成功。
6、服务器收到连接成功的信息,发送数据,并发送响应码。
7、客户端收到响应码后,接收数据,关闭数据端口,并退出。

2.2.5.2 扩展事件流

无。

2.2.5.3 异常事件流

如果服务器与客户端在某一个过程交互失败,会发送响应码到对端,根据响应码,解决问题。

2.2.6 输出

输出为指定目录下的文件和子目录,并将结果重定向到临时文件中,方便以后查看。

2.2.7 后置条件

无。

2.3 上传文件

2.3.1 功能概述

将客户端指定的文件上传到服务器,进行保存。

2.3.2 上传文件的类型

上传的文件包括文本文件、二进制可执行文件、声音文件、图像文件、数据压缩文件等,可以进行上传的文件格式多样。

2.3.3 前置条件

用户登录成功,服务器连接成功。

2.3.4 输入

输入格式:

put 文件名

输入要求:上传的文件一定要在客户端存在。

2.3.5 处理

服务器连接成功后,将客户端的指定的文件上传到服务器端。

2.3.5.1 基本事件流

1、客户端尝试与服务器端建立连接,打印响应码,后接一行文本提示消息。
2、客户端连接上服务器后,将put命令发送到服务器。
3、服务器处理put命令,将该命令的响应码发送给客户端。
4、客户端收到响应码,创建数据监听窗口,将端口信息发送给服务器,服务器创建一个数据端口,连接客户端的的数据监听端口。
5、客户端接受连接,客户端告诉服务器连接成功。
6、客户端选择要上传的文件,将文件写入文件传输的进程中。
7、服务器关闭数据连接端口。

2.3.5.2 扩展事件流

无。

2.3.5.3 异常事件流

如果服务器与客户端在某一个过程交互失败,会发送响应码到对端,根据响应码,解决问题。

2.3.6 输出

上传成功后,在服务器端的指定文件夹中会有我们上传的文件。

2.3.7 后置条件

退出连接。

2.4 下载文件

2.4.1 功能概述

将服务端的文件下载到客户端,供客户端使用。

2.4.2 下载文件的类型

下载的文件包括文本文件、二进制可执行文件、声音文件、图像文件、数据压缩文件等,可以进行上传的文件格式多样。

2.4.3 前置条件

用户登录成功,服务器连接成功。

2.4.4 输入

输入格式:

get 文件名

输入要求:下载的文件一定要在服务器端存在。

2.4.5 处理

服务器连接成功后,将客户在服务器端需要的文件下载到客户端。

2.4.5.1 基本事件流

1、客户端尝试与服务器端建立连接,打印响应码,后接一行文本提示消息。
2、客户端连接上服务器后,将get命令发送到服务器。
3、服务器处理get命令,将该命令的响应码发送给客户端。
4、客户端收到响应码,创建数据监听窗口,将端口信息发送给服务器,服务器创建一个数据端口,连接客户端的的数据监听端口。
5、客户端接受连接,客户端告诉服务器连接成功。
6、服务器收到连接成功的信息,发送文件,并发送响应码。
7、客户端收到响应码后,接收文件,关闭数据端口,并退出。

2.4.5.2 扩展事件流

无。

2.4.5.3 异常事件流

如果服务器与客户端在某一个过程交互失败,会发送响应码到对端,根据响应码,解决问题。

2.4.6 输出

下载成功后,在客户端会有我们在服务器上下载的文件。

2.4.7 后置条件

退出连接。

猜你喜欢

转载自blog.csdn.net/ZWE7616175/article/details/81451786