51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 4084|回复: 5

[求助] 在集成测试中异步逻辑如何测试?

[复制链接]
  • TA的每日心情
    无聊
    昨天 09:28
  • 签到天数: 385 天

    连续签到: 4 天

    [LV.9]测试副司令

    发表于 2018-11-14 09:59:01 | 显示全部楼层 |阅读模式
    1测试积点
    代码中存在异步逻辑
    1. @Autowired
    2. AsyncRunner asyncRunner;
    3. ...
    4. public Result testMethod() {
    5.     ...
    6.     asyncRunner.submit(()->{
    7.     // 一些异步逻辑
    8.     });
    9.     ...
    10. }
    复制代码
    如果直接测试的话,异步方法来不及执行完整。现在是粗暴地通过Thread.sleep()来测试,有没有办法能够借助mock,使得异步逻辑在测试中同步执行?
    期望的方法如:
    1. @Mock
    2. AynscRunner asyncRunner;
    3. ...
    4. when(asyncRunner.submit(testLogic())).callRealMethod(testLogic());
    5. Result result = testMethod();
    复制代码


    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    昨天 10:10
  • 签到天数: 1367 天

    连续签到: 4 天

    [LV.10]测试总司令

    发表于 2018-11-14 10:50:31 | 显示全部楼层
    后期查数据吧
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    昨天 07:17
  • 签到天数: 2636 天

    连续签到: 4 天

    [LV.Master]测试大本营

    发表于 2018-11-14 11:21:37 | 显示全部楼层
    查看时间吧
    回复

    使用道具 举报

  • TA的每日心情

    2023-9-8 14:25
  • 签到天数: 939 天

    连续签到: 1 天

    [LV.10]测试总司令

    发表于 2018-11-15 13:56:49 | 显示全部楼层
    后期查数据吧
    回复

    使用道具 举报

  • TA的每日心情

    2020-2-2 12:43
  • 签到天数: 630 天

    连续签到: 1 天

    [LV.9]测试副司令

    发表于 2018-11-15 14:21:14 | 显示全部楼层
    支持后期查数据,异步不好测,还有一种方法 你可以先让开发给你调下时间,延长中间的时间,迫使他同步
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    昨天 08:55
  • 签到天数: 1647 天

    连续签到: 4 天

    [LV.Master]测试大本营

    发表于 2018-11-15 15:34:27 | 显示全部楼层
    可以后期查数据
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-3-29 06:02 , Processed in 0.068475 second(s), 21 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表