gpt4 book ai didi

ruby-on-rails - 如何测试 Rails API 应用程序?

转载 作者:行者123 更新时间:2023-11-28 20:27:28 25 4
gpt4 key购买 nike

我有一个 Rails API 应用程序,它非常大并且有很多端点供用户访问数据。

我不确定如何创建将由每个开发人员执行的测试,以便将生产中出现错误的可能性降到最低。

每个 API 都根据不同类型的用户的角色进行身份验证,并在其上呈现不同的 JSON。

最佳答案

首先我认为你需要定义你想要测试什么,例如

你说每个API都是根据用户的角色来认证用户,那么你如何认证这些用户呢?基本身份验证,身份验证 token ?

让我们创建一个场景

首先测试端点的状态码

200: OK - Basically self-explanitory, the request went okay. 

401: Unauthorized - Authentication credentials were invalid.

403: Forbidden
- The resource requested is not accessible - in a Rails app, this would generally be based on permissions.

404: Not Found - The resource doesn’t exist on the server.

在此之后,您可以开始检查请求的响应主体 GETPOSTPUTDELETE并检查您期望的响应内容是否正确。

然后为您的 API 编写一些集成测试

您可以使用 RSpec 结合 FactoryGirl 等框架来更轻松地为您的 api 编写集成测试

# spec/api/v1/user_spec.rb
describe "sample API" do
it 'should return a valid user' do
user = FactoryGirl.create(:user)

get "/api/v1/user/#{user.id}"

# test for the 200 status-code
expect(response).to be_success

# check that the message attributes are the same.
expect(json['name']).to eq(user.name)
end
end

希望它能给你一些指引

关于ruby-on-rails - 如何测试 Rails API 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49623386/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com