31.OpenResty测试框架----Test::Nginx学习笔记

cover20220907.png

相关网站

Test-Nginx文档
使用文档(英文的)

安装方法

sudo cpan Test::Nginx

我在挂了梯子之后才安装成功

目录结构

在项目根目录下创建一个文件夹"t"

在这个文件夹下创建若干后缀为".t"的文件即可

如:

└── t
    ├── bug.t
    ├── builtin.t
    ├── eval.t
    ├── input-conn.t
    ├── input-cookie.t
    ├── input-ua.t
    ├── input.t
    ├── phase.t
    ├── sanity.t
    ├── subrequest.t
    ├── unused.t
    └── vars.t

测试文件结构

测试文件的内容由2部分构成,上面是Perl代码,下面是数据,中间用"__DATA__"分割。

如:

use Test::Nginx::Socket 'no_plan';

run_tests();

# 上面是Perl代码
__DATA__
# 下面是数据

# 每一个测试块以"==="开头,后面是测试块的名称
=== TEST 1: hello, world
这是一个简单的测试  # 这行写描述信息

# 这是一个section,section以"---开头", 后面接section的名字,不同的section有不同的作用
# 这个section的作用是把下面的配置写进配置文件的server{}下
--- config
location = /t {
    echo "hello, world!";
}

# 这个section发起了一个请求
--- request
GET /t

# 检查响应内容是不是"hello, world!"
--- response_body
hello, world!

# 检查错误码是不是200
--- error_code: 200

运行测试

配置环境变量:export PATH=/usr/local/openresty/nginx/sbin:$PATH

使用prove命令来运行,如:prove t/foo.t

如果使用vim, 在vim中输入命令:!prove %可以运行当前文件

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容