Cyperful 项目使用教程

Cyperful 项目使用教程

cyperful Interactive system testing UI for capybara cyperful 项目地址: https://gitcode.com/gh_mirrors/cy/cyperful

1. 项目介绍

Cyperful 是一个为 Ruby Capybara 系统测试提供交互式 UI 的增强工具。它借鉴了 Cypress.io 等前端测试工具的优秀开发者体验(DX),为 Ruby 开发者提供了一个直观的测试调试界面。Cyperful 允许开发者在测试过程中实时查看测试步骤、暂停测试并进行页面交互、查看 API 请求和控制台日志,甚至可以自动重启测试或录制测试视频。

主要特性

  • 实时步进:测试执行中的每一步骤都能即时展示,即时更新。
  • 交互式测试:随时暂停测试,直接在页面上操作验证,大大提高了调试效率。
  • 全面监控:不仅能看到页面上的操作,还能捕获 API 请求与控制台日志,信息一目了然。
  • 自动化重启:代码修改后自动重启测试,减少重复劳动,加速迭代周期。
  • 视频回放:实验性功能允许录制测试过程视频,复现问题变得简单直观。

2. 项目快速启动

安装

首先,在 Gemfile 中添加 Cyperful:

group :test do
  gem "cyperful", require: false
end

然后运行 bundle install 安装依赖。

配置

RSpec

rails_helper.rb 文件中添加以下配置:

CYPERFUL = ENV["CYPERFUL"]
require "cyperful/rspec" if CYPERFUL

RSpec.configure do |config|
  # 确保在 Cyperful 设置之前配置浏览器驱动
  config.prepend_before(:example, type: :system) do
    driven_by :selenium, using: :chrome, screen_size: [1400, 1400]
  end
end
Minitest

application_system_test_case.rb 文件中添加以下配置:

CYPERFUL = ENV["CYPERFUL"]
require "cyperful/minitest" if CYPERFUL

class ApplicationSystemTestCase < ActionDispatch::SystemTestCase
  include Cyperful::Minitest::SystemTestHelper if CYPERFUL

  driven_by :selenium, using: :chrome, screen_size: [1400, 1400]
end

使用

运行测试时,设置 CYPERFUL 环境变量:

CYPERFUL=1 rails test test/system/my_test.rb:123

3. 应用案例和最佳实践

案例1:实时调试复杂系统测试

在开发一个复杂的 Rails 应用时,系统测试往往涉及多个页面和交互。使用 Cyperful,开发者可以在测试过程中实时查看每一步的操作,暂停测试并手动检查页面状态,从而快速定位问题。

案例2:自动化测试与代码修改同步

在敏捷开发过程中,代码频繁修改是常态。Cyperful 的自动重启功能确保了每次代码修改后,测试能够自动重新运行,减少了手动重启测试的繁琐操作,提高了开发效率。

最佳实践

  • 单个测试文件运行:Cyperful 目前最适合单个测试文件运行,建议在测试文件中只包含一个测试用例,或者通过指定行号来运行单个测试。
  • 配置选项优化:根据项目需求,调整 reload_test_filesauto_run_on_reloadhistory_recording 等配置选项,以获得最佳的测试体验。

4. 典型生态项目

Capybara

Capybara 是一个用于 Web 应用的验收测试框架,支持多种浏览器驱动。Cyperful 作为 Capybara 的增强工具,提供了更丰富的调试功能,两者结合使用可以大大提升测试效率。

Selenium

Selenium 是一个用于 Web 应用的自动化测试工具,支持多种浏览器。Cyperful 目前仅支持 Selenium + Chrome 驱动,未来可能会扩展支持更多浏览器和驱动。

Rails

Rails 是一个流行的 Ruby Web 应用框架。Cyperful 特别针对 Rails 7.1 及 Ruby 3.2.1 环境进行了优化,与 Rails 结合使用可以获得更好的测试体验。

通过以上教程,您应该能够快速上手并使用 Cyperful 进行高效的系统测试。希望 Cyperful 能够帮助您在开发过程中更好地调试和验证您的应用。

cyperful Interactive system testing UI for capybara cyperful 项目地址: https://gitcode.com/gh_mirrors/cy/cyperful

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

苗伊姬Desmond

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

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

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

打赏作者

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

抵扣说明:

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

余额充值