Testing 在各种配置中测试守护进程的黑盒行为
我正在开发一个node.js守护程序,它提供一个html页面(支持ajax),该页面通过Web表单上传(基于html5)文件,守护程序还处理与文件上传相关的所有PUT、POST、OPTIONS和GET请求,并查询状态(不一定来自它所服务的网页,任何客户端都可以通过http进行交互) 我想通过将服务器本身(比如node.js)视为一个黑盒子,通过编程测试一大堆东西 输入如下:Testing 在各种配置中测试守护进程的黑盒行为,testing,daemon,Testing,Daemon,我正在开发一个node.js守护程序,它提供一个html页面(支持ajax),该页面通过Web表单上传(基于html5)文件,守护程序还处理与文件上传相关的所有PUT、POST、OPTIONS和GET请求,并查询状态(不一定来自它所服务的网页,任何客户端都可以通过http进行交互) 我想通过将服务器本身(比如node.js)视为一个黑盒子,通过编程测试一大堆东西 输入如下: json配置文件中不存在、为空或各种类型(不正确)的配置值 使用不同的命令行参数运行程序 与网页交互(导航到该网页,单击
- json配置文件中不存在、为空或各种类型(不正确)的配置值
- 使用不同的命令行参数运行程序
- 与网页交互(导航到该网页,单击按钮,从“文件选择”对话框中选择特定文件,单击“确定”,等等,这将在后台导致许多http请求)
- 以编程方式执行“原始”http请求
- 在日志文件中查找条目
- 检查$num进程是否(仍)在运行
- 检查所有请求的http响应代码。(包括背景中的所有ajaxy请求,或测试中定义的对单个请求的响应)
- 任意命令(如从Web服务器下载文件并对其求和)
- cucumber经常出现在此类话题中,但它似乎相当冗长,而且过于针对商业人士
- httpunit似乎假设一个系统以一种特定的配置运行
- rspec似乎是用于白盒测试ruby的
- 誓言太基本了,没有浏览器自动化
Dieter一个通用的解决方案可以是使用一些标准的和外部的lib,比如各种http和selenium lib:因为我找不到我需要的东西,所以我自己把它组装起来。