Hurl 开源项目教程

Hurl 开源项目教程

HurlChoose the browser on the click of a link项目地址:https://gitcode.com/gh_mirrors/hur/Hurl

项目介绍

Hurl 是一个命令行工具,用于运行和测试 HTTP 请求。它使用简单的纯文本格式定义请求,可以链式请求、捕获值并在响应头和主体上进行查询。Hurl 非常灵活,适用于数据抓取和 HTTP 会话测试。它支持 HTML 内容、REST/SOAP/GraphQL API 以及其他基于 XML/JSON 的 API。

项目快速启动

安装

首先,确保你已经安装了 Hurl。你可以通过以下命令安装:

curl -LO https://github.com/U-C-S/Hurl/releases/download/v1.0.0/hurl_1.0.0_amd64.deb
sudo dpkg -i hurl_1.0.0_amd64.deb

基本使用

创建一个名为 example.hurl 的文件,并添加以下内容:

# 获取主页
GET https://example.org
HTTP 200
[Captures]
csrf_token: xpath "string(//meta[@name='_csrf_token']/@content)"

# 登录
POST https://example.org/login
Content-Type: application/x-www-form-urlencoded

username=admin&password=1234&csrf_token={{csrf_token}}
HTTP 200

运行 Hurl 文件:

hurl example.hurl

应用案例和最佳实践

测试 REST API

假设你有一个 REST API 端点 https://api.example.com/users,你可以使用 Hurl 进行测试:

# 获取用户列表
GET https://api.example.com/users
HTTP 200
[Asserts]
jsonpath "$.length() > 0"

# 创建新用户
POST https://api.example.com/users
Content-Type: application/json

{
  "name": "John Doe",
  "email": "john.doe@example.com"
}
HTTP 201

性能测试

你可以使用 Hurl 进行性能测试,确保你的 API 响应时间在可接受范围内:

GET https://api.example.com/heavy-endpoint
HTTP 200
[Asserts]
duration < 1000  # 响应时间小于1秒

典型生态项目

集成 CI/CD

Hurl 可以轻松集成到 CI/CD 流程中,生成文本、JUnit、TAP 和 HTML 报告。以下是一个 GitHub Actions 示例:

name: Hurl Tests
on: [push]
jobs:
  test:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
    - name: Install Hurl
      run: |
        curl -LO https://github.com/U-C-S/Hurl/releases/download/v1.0.0/hurl_1.0.0_amd64.deb
        sudo dpkg -i hurl_1.0.0_amd64.deb
    - name: Run Hurl Tests
      run: hurl --test --report-junit junit.xml example.hurl
    - name: Upload JUnit Report
      uses: actions/upload-artifact@v2
      with:
        name: junit-report
        path: junit.xml

通过以上步骤,你可以快速上手 Hurl,并将其应用于各种 HTTP 请求的测试和性能评估中。

HurlChoose the browser on the click of a link项目地址:https://gitcode.com/gh_mirrors/hur/Hurl

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

沈书苹Peter

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值