`

ruby mock redismock

    博客分类:
  • ruby
 
阅读更多
stub 与mock之间的区别是,给接受者fake一个方法,并阻断原方法,参数可以是字符串、symbol,后者则是创建一个对象。https://ruby-china.org/topics/10977。后者创建一个对象
不仅仅方法,但基本可以直接用mock解决https://github.com/rspec/rspec-mocks#mock-objects-and-test-stubs

gem install rspec
gem install rspec-mocks

创建一个实例
book = instance_double("Book", :pages => 250)

创建这个实例的方法3种方式
allow(book).to receive(:title) { "The RSpec Book" }
allow(book).to receive(:title).and_return("The RSpec Book")
allow(book).to receive_messages(
    :title => "The RSpec Book",
    :subtitle => "Behaviour-Driven Development with RSpec, Cucumber, and Friends")
创建类方法
一种是使用stub,一种是使用mock的 class_double 与instance_double的区别
(1)BidFeedBack.stub(:test1).and_return("999999999")
(2)bid = class_double("BidFeedBack")
   allow(BidFeedBack).to receive(:test1).and_return("2222222222")

require 'mock_redis'
mockredis = MockRedis.new
mockredis.hset("youku:creatives:55","id","55")//给mock_redis里面存储值
Creative.redis = mockredis 指向给某个对象,也可以直接



https://relishapp.com/rspec/rspec-mocks/v/3-4/docs/basics/test-doubles
分享到:
评论

相关推荐

    mock_redis:Ruby的Mock Redis宝石

    mr = MockRedis.new一样容易require 'mock_redis'; mr = MockRedis.new require 'mock_redis'; mr = MockRedis.new 。 然后,您可以在其上调用与在真正的Redis对象上调用的方法相同的方法。 例如: >> require '...

    redismock:Go在Go的单元测试中模拟Redis

    Redismock 软件包github.com/elliotchance/redismock对于与Redis交互的单元测试应用程序很有用。 它使用了。 与使用真实或伪造的Redis(在下文中有更多介绍)不同, redismock提供了正常且美观的redismock ,以...

    Laravel开发-laravel-redis-mock

    为了解决这些问题,`laravel-redis-mock`包应运而生,它为Laravel的测试场景提供了Redis模拟器,使得开发者可以在不实际连接Redis服务器的情况下执行测试。 首先,我们来理解`laravel-redis-mock`的核心作用。这个...

    Ruby 的模拟 Redis 宝石.zip

    Ruby 的模拟 Redis 宝石模拟Redis MockRedis 提供与 相同的接口redis-rb,但它将数据存储在内存中,而不是与 Redis 服务器通信。它旨在用于测试。要求Ruby 3.x redis-rb 5.x当前实现针对 Redis 6.2 和 7.0 进行了...

    redis-mock-java:Java中Redis的内存中实现

    redis-mock-java 用纯Java编写的与内存Redis兼容的实现。 。地位安装专家< dependency> < groupId>org.rarefiedredis.redis</ groupId> < artifactId>redis-java</ artifactId> < version>0.0.5</ version></ ...

    java 版 redis 服务器,java redis mock.zip

    不再需要Mock redis api。支持 redis api 2.8jedis-3.0+ api 已更改,因此如果你使用最新的 api,则必须将其更新至 0.1.0-3.0版本 0.2.0 删除 jedis 依赖,不再需要任何外部依赖。版本 0.2.2 支持PubSubOperation...

    redis-py 的 mock(不再支持).zip

    mockredis.mock_strict_redis_client例如使用mock库@patch('redis.Redis', mock_redis_client)或者@patch('redis.StrictRedis', mock_strict_redis_client)测试存在许多单元测试来验证模拟功能的正确性。此外,...

    Redis 与SpringMVC 集成 基于注解方式

    Redis 与SpringMVC 集成 基于注解方式

    mocha, mocha 是用于 ruby的mock和stub库.zip

    mocha, mocha 是用于 ruby的mock和stub库 mocha 描述用于模拟和stub的ruby 库。完整的。简单的和可以读的语法,完全&部分模拟。内置支持MiniTest和 Test::Unit 。由许多其他测试框架支持。安装 gem使用以下

    analytics-ruby-mock:捕获对segment.io的所有调用并阻止其发送

    安装 gem install analytics_ruby_mock用法将analytics_ruby_mock添加到您的gemfile中: gem 'analytics_ruby_mock' , group : :test 在您的spec_helper需要analytics_ruby_mock: require 'analytics_ruby_mock' ...

    redis-mock-0.1.6.jar

    redis-mock是一个专门为Redis设计的单元测试工具,它能在不需要连接真实Redis服务器的情况下,提供redis-mock是一个专门为Redis设计的单元测试工具,它能在不需要连接真实Redis服务器的情况下,提供模拟的Redis数据...

    mockServer,mock服务端

    MockServer 是一个强大的工具,主要用于在开发过程中模拟服务器行为,特别是在接口开发和测试阶段。它允许开发者在没有实际后端服务的情况下,创建模拟的HTTP和HTTPS服务器,以便于快速验证前端代码或者自动化测试。...

    redis相关jar包

    jedis就是集成了redis的一些命令操作,封装了redis的java客户端

    基于python的mock测试数据练习

    Python 提供了一个强大的库——`unittest.mock`,用于模拟(mock)对象、方法和类,以便在测试中隔离依赖关系,专注于测试目标代码的功能。本练习主要关注如何使用 `unittest.mock` 进行mock测试数据。 一、Mock...

    Mock是一个零侵入的服务端Mock平台,底层基于JVM Sandbox。相比于Fiddler、-mock-fe.zip

    Mock是一个强大的服务端模拟工具,它的核心特性是零侵入性,这意味着在你的实际项目代码中无需进行任何修改,即可实现服务的模拟。这极大地提高了开发效率,特别是在进行集成测试或者依赖于其他服务但又无法实时访问...

    spring-mock.jar

    Classes contained in spring-mock.jar: org.springframework.mock.jndi.ExpectedLookupTemplate.class org.springframework.mock.jndi.SimpleNamingContext.class org.springframework.mock.jndi....

    用于单元测试的简单 redis java mock.zip

    用于单元测试的简单 redis java mockredis-mock用于单元测试的简单 redis java mock。<dependency> <groupId>com.github.zxl0714</groupId> <artifactId>redis-mock</artifactId> <version>0.1</version></...

    Mock

    Mock技术在软件开发中扮演着重要的角色,尤其是在测试领域。它允许开发者在不依赖实际环境或第三方服务的情况下,创建模拟对象来代替真实组件,以便进行单元测试和集成测试。这样可以提高测试效率,减少测试复杂性,...

    Centos7下mock安装rpm

    在Linux系统管理中,`Mock`是一个非常有用的工具,尤其对于开发者和打包人员而言,它能够在隔离环境中构建RPM软件包。在CentOS 7环境下,`Mock`可以帮助我们在不干扰系统其他组件的情况下测试和构建RPM包。下面将...

    mock

    Mock技术在软件开发中扮演着重要的角色,尤其是在测试阶段。它允许开发者在真实环境尚未准备好或不可用时,创建模拟对象来替代实际依赖,以便进行功能验证和性能测试。本项目涉及的内容是关于如何在Windows或Linux...

Global site tag (gtag.js) - Google Analytics