FATEQiang
V2EX  ›  Android

Android 单元测试如何规范

  •  
  •   FATEQiang · Sep 22, 2021 · 13074 views
    This topic created in 1692 days ago, the information mentioned may be changed or developed.

    Android 的单元测试真的难搞啊! 1 、写过很多关于 Android 的单元测试的用例,特别是对老项目新增单元测试用例,发现大多时候,mock 、power pock 也难对代码做单元测试,很多单元测试的用例发现都是“废话”! 2 、Robolectric 虽然能解决 4 大组件的问题,但是真实测试发现写的用例也很鸡肋! 3 、使用 AndroidTest 又依赖环境,更多面向的应该是测试人员。 所以 Android 到底怎样写出有实际意义的测试用例,而不是类似完成 1000 行 6 个用例的 kpi ? 希望有经验的人,给出你们的看法,不再是面向领导编程!!!

    6 replies    2021-09-22 22:56:34 +08:00
    ahao99
        1
    ahao99  
       Sep 22, 2021
    把业务相关的代码抽取出单独的 Java 代码,针对 JAVA 代码写 UT
    Test 是否有意义,取决于你对业务的理解
    FATEQiang
        2
    FATEQiang  
    OP
       Sep 22, 2021
    @ahao99 你说得很对,我们很多时候也是 “抽取”,不过感觉真的是开发的负担
    xylophone21
        3
    xylophone21  
       Sep 22, 2021
    @ahao99 然而在 Android 端,一般来说业务并不是很多?
    Geele
        4
    Geele  
       Sep 22, 2021
    这个需要可测性高的代码,简单来说就是分层。比如 MVVM 中的 ViewModel 主要处理业务逻辑,且不依赖 Android 环境,就可以针对 ViewModel 的业务逻辑做 Java Unit Test (验证函数的输入输出)。反之没有良好的分层,业务逻辑与视图混在一块,我个人理解没办法做单元测试,只能做集成测试或者 UI 测试。
    Helsing
        5
    Helsing  
       Sep 22, 2021 via iPhone
    Clean 架构
    vemier
        6
    vemier  
       Sep 22, 2021
    集成测试优先
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1023 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 46ms · UTC 22:11 · PVG 06:11 · LAX 15:11 · JFK 18:11
    ♥ Do have faith in what you're doing.