栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Sapienz - Multi-objective Automated Testingfor Android Applications

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Sapienz - Multi-objective Automated Testingfor Android Applications

Sapienz:安卓应用多目标自动化测试
  • 要点:遗传算法、安卓测试、测试套件、多目标优化、NSGA-II

  • 总结

    • 定义了遗传算法套件级别和测试用例级别
    • 定义了测试用例级别的两种基因,一种是原子操作 atomic genes,一种是在特定UI下的一系列操作 motif genes.
    • 还有遗传算法的适应度函数,虽然没有写具体func,但思路说是覆盖率 + 长度(越短越好)+ 检测到错误数
  • 摘要

    • Sapienz:安卓测试,基于多目标搜索,自动搜索和优化测试序列,最小化长度,最大化覆盖率和错误揭露
    • Sapienz:结合了随机模糊系统和基于搜索的探索、seeding、多级插桩
  • Intro

    • 探索性测试:测试工程师使用、探索应用,然后编写、执行测试
    • The key insight in our approach is that minimising test sequence
      length and maximising other objectives can be combined in
      a Pareto-optimal multi-objective search-based approach to
      Android testing.

      最小化测试序列,最大化别的目标通过帕累托优化多目标搜索

  • 相关工作

    • Monkey
    • Dynodroid: 基于反馈的monkey
    • AndroidRipper: 深搜测试
  • THE SAPIENZ APPROACH

    • 适用于白盒、灰盒、黑盒测试

    • two types of genes: the low-level atomic genes and the high-level motif genes

    • 基于测试的多目标搜索

      • 多目标:覆盖率、测试序列长度、崩溃数量

      • 优化方法:NSGA-II

      • 染色体表达

        • 种群:测试套件
        • 染色体:test sequences
        • 基因:test events
      • 交叉

        • 测试套件级别交叉
        • 测试用例级别交叉
      • 选择

        • rank选择
      • 适应度函数:

        • coverage, length of the test and number of revealed crashes
    • 探索策略

      • 两种基因的组合
    • 静态动态分析

      • 字符串种子

        • 从xml提取,便于在需要的时候输入,更有效
      • Multi-level instrumentation for skeleton and skin coverage

  • 结论

    • Sapienz的进化算法不断优化覆盖范围,序列长度和崩溃发现的数量,寻求揭示尽可能多的崩溃,同时最小化测试序列的长度。
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/602182.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号