• 汗香
    2022-04-17
    我认为保证测试有效性有两点: 1、不能对待测方法的实现使用测试替身,可以对测试方法调用的外部组件使用测试替身 2、不能行为验证绑定到实现方法的内部 另外我有个问题,最后一个视频演示的是 Controller -> Dao 的场景,这种直接对 Dao 使用测试替身,这种方法毋庸置疑,但如果是多层构架,如 Controller -> Service -> Dao ,那么我们在测 Controller 时应该是对 Dao 使用测试替身还对 Service 使用测试替身

    作者回复: 驱动controller的时候 double service 驱动service的时候 double dao

    
    2
  • 枫中的刀剑
    2022-03-30
    对于伦敦学派,根据第5、6章节的内容,也是主要是通过状态校验来保证测试的有效性。但是有个疑惑点是对于伦敦学派,采用状态验证的方式只能保证单个sut的有效性,而对于更大的功能上下文的有效性是应该没法保证的,所以对于完整功能的有效性验证就只能通过更大的端到端测试来保证吗?

    作者回复: 引入测试替身之后 可以验证更大范围

    
    
  • 姑射仙人
    2022-05-21
    在伦敦学派中,是如何保证测试的有效性的? 状态验证
    
    2
  • Geek_32ff72
    2023-01-16 来自广东
    最后的例子把repo mock了,但是controller->repo的正确性怎么保证呢?是否还需要一个完整的集成测试呢?
    
    
  • 王艺辉
    2022-12-03 来自浙江
    伦敦学派初始将自己视作更大的功能上下文通过替身保证测试有效性;将注意力集中到功能上下文中的某个对象上之后,依然由芝加哥学派来保证测试有效性。
    
    
  • SochiLee
    2022-06-21
    古典学派到底是叫芝加哥学派还是底特律学派呀?《Mocks Aren't Stubs》中说古典学派叫底特律学派。
    共 1 条评论
    
  • zenk
    2022-05-07
    在伦敦学派中,是如何保证测试的有效性的? 架构愿景清晰,保证可以构造稳定的测试替身,进而保证测试的有效性。
    
    
  • davix
    2022-05-03
    在伦敦学派中,是如何保证测试的有效性的? 我覺得是通過更高層的集成測試保證的。比如repository的測試要用真實數據庫
    
    
  • wenming
    2022-04-01
    思考题我是这么理解的:只要构造 Stub 的时候不对 SUT 的结果产生影响,也就是说,Stub 的存在不会改变测试的效果,只是我们构建夹具(测试上下文)的形式或者说方法有区别,那么整个测试的有效性就能够得到保证
    
    
  • 邓志国
    2022-03-31
    保证测试有效,就得用足够好的测试替身。
    
    