当前位置: 首页 > backend >正文

面向测试编程——SmartRefreshLayout的测试case

产品层面总是以为开发是面向需求编程,其实不是,开发是面向测试case编程
就比如SmartRefreshLayout除了要考虑网络正常的情况,还要考虑网络异常的情况

SmartRefreshLayout的测试case

  1. 没有数据的时候禁止加载更多, 既然第一页都没有, 干嘛要第二页
        binding.refreshLayout.setEnableLoadMore(false)// 或者<com.scwang.smart.refresh.layout.SmartRefreshLayoutandroid:id="@+id/refreshLayout"app:srlEnableLoadMore="false"android:layout_width="match_parent"android:layout_height="match_parent"></com.scwang.smart.refresh.layout.SmartRefreshLayout>
  1. 刷新失败后重置page
  2. 加载失败后重置page

分享一下自己写的网络异常的loadMoreFail和refreshFail

class PageReqBean {var page = ApiConstants.PAGE_STARTvar pageSize = ApiConstants.PAGE_SIZEprivate var lastPage = ApiConstants.PAGE_STARTfun increase() {lastPage = pagepage++}fun loadMoreFail() {reset()}fun refreshFail() {reset()}fun reset() {page = lastPage}fun setRefresh() {lastPage = pagepage = ApiConstants.PAGE_START}fun isRefresh(): Boolean {return page == ApiConstants.PAGE_START}
}
http://www.xdnf.cn/news/9399.html

相关文章:

  • Ubuntu系统开放 45876/tcp 端口
  • Cookie、Session和Token鉴权
  • Python实用脚本:可视化分割txt标签数据
  • TWTSolutions水厂污水厂设计计算软件:化学强化絮凝单元
  • leetcode:1688. 比赛中的配对次数(python3解法,数学相关算法题)
  • ubuntu安装tigervnc
  • Python优雅执行SSH命令:10种方法+虚拟环境深度实践
  • 使用 mysqldump 获取 MySQL 表的完整创建 DDL
  • Spring AI(一)
  • windows 环境中 python连接到达梦库,及相关问题解决办法
  • TDengine 中的存储配置
  • 线程池详解:原理、使用与优化
  • 78. Subsets和90. Subsets II
  • Linux:基础指令与内涵理解(下)与权限
  • git 命令之-git cherry-pick
  • 短剧看广告APP系统开发:打造高效变现与用户体验双赢平台
  • 人工智能AI之机器学习基石系列 第 2 篇:数据为王——机器学习的燃料与预处理
  • JavaSE核心知识点04工具04-04(Git)
  • 专业教育机构视频网站平台播放器页面如何处理视频加密的?
  • [React]实现一个类zustand公共状态库
  • 2025上半年软考系统架构设计师选择题试题与答案
  • AI Agents执行流程和决策流程学习
  • 零基础设计模式——结构型模式 - 组合模式
  • RapidOCR4j项目学习
  • 润和星闪WS63E的MQTT示例程序存在的潜在问题
  • 经典查找算法合集(下)
  • 行为型:命令模式
  • 多语言实现插值查找算法
  • 理解vue-cli中的webpack
  • Minktec 柔性弯曲传感器,灵敏捕捉坐姿弓背、精准监测行走姿态,守护儿童背部健康,为科学健身提供数据支撑,开启职业健康与背痛 AI 干预新方向。