Ma1tobiose / TestCasesProject

A public project which includes all test cases for fireline.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

TestCasesProject

一个公开的项目,用来公示火线测试的用例.

测试用例类型

  • 资源关闭类

    • 数据库连接对象未关闭
    • 数据库连接对象中当Statement被关闭后,由该Statement初始化的ResultSet对象也会自动关闭
    • 资源对象连续关闭可能异常
    • 资源对象被return前可能异常
    • 资源对象正常return
    • 资源对象未关闭
    • 使用try-with-resources写法关闭
    • 跨文件自定义close方法关闭
    • 跨文件自定义close方法,实际未关闭
    • 第三方库方法关闭
    • 当前文件自定义方法关闭
    • 当前文件自定义方法,实际未关闭
    • 跨文件且调用第三方库关闭方法
    • 跨文件的未调用第三方库方法,实际未关闭
    • 先跨自定义方法,再跨类关闭
    • 先跨自定义方法,再跨类,实际没有关闭
    • 先跨自定义方法,再跨类,再调用第三方类进行关闭
    • 在finally中关闭
    • 资源对象在初始化异常可能导致无法关闭
    • 资源对象在套接使用时,只需要手动关闭最后套接的对象
    • ByteArrayInputStream等不需要检查关闭的资源对象
    • Socket关闭检查,没有关闭
    • 通过Socket获取的getInputStream和getOutputStream不需要手动关闭
    • 跨类关闭Socket对象会自动关闭通过Socket获取的资源对象
    • ZipFile关闭检查,没有关闭
    • ZipFile关闭检查,实际关闭
    • 多个资源对象使用try-catch连续正常关闭
    • SQLiteDatabase对象未关闭
    • SQLiteDatabase对象正常关闭
    • SQLiteDatabase和Cursor都未关闭
  • 安全类

    • Fragment漏洞
    • WebView未禁止访问本地文件系统
    • 拒绝服务隐患
    • 日志函数中进行变量赋值
    • 日志输出应该被包裹在DEBUG开关中
    • 日志敏感信息输出
    • 远程提权攻击隐患
    • 应用程序备份恢复隐患
    • 可被Debug漏洞
    • 组件导出过多
    • AndroidManifest权限安全
    • 目录遍历漏洞
    • SQL注入风险
  • 空指针类

    • 错位的空判断
    • 破坏空判断
    • 存在空指针引用
  • 代码规范类

    • 程序关联字段未写入非空的值
    • 空的finally块
    • 非条件化的if表达式
    • 避免重复的常量
    • 空的try块
    • 分解的if表达式
    • 空的if表达式

About

A public project which includes all test cases for fireline.


Languages

Language:Java 99.0%Language:Kotlin 1.0%