3

首先我应该说,我不太擅长测试我的代码,而且直到最近我才开始这样做。

所以我有这个 Rails 应用程序。它基本上是一个 API 端点。它接受请求并吐出 JSON。有很好的(我希望)测试覆盖率可以测试大部分功能。

现在我们正在部署一个暂存环境,并希望让负载测试人员(独立部门)“玩”它。我想非常确定我们是否正确部署了它。

我可以针对这个暂存部署运行 RSpec 的请求规范吗?人们会做这种测试吗?什么是最佳实践?我应该读什么?

4

2 回答 2

5

是的,您可以使用 Rspec 和 Capybara 测试部署的站点。您需要像这样更改配置:

  1. 将驱动程序更改为或:webkit,因为默认驱动程序 ( ) 不支持针对远程服务器运行。:selenium:poltergeist:rack_test

    Capybara.javascript_driver = :selenium
    
  2. 设置 app_host。

    Capybara.app_host = 'http://example.com'
    
  3. 关闭本地服务器。

    Capybara.run_server = false
    

之后,您可以使用 Capybara DSL 为已部署的服务器创建测试。

于 2012-09-14T16:44:05.017 回答
1

您可以在没有 Rails 的情况下运行 rspec,并使用 rest-client 和 json gem 来测试远程 REST 端点。

(我已经使用此方法为带有 REST api 的 Java 应用程序生成可读测试。)

于 2017-12-17T13:03:01.397 回答