Skip to content

Day2、3、4-用户端App自动化测试框架搭建

用户端 App 自动化测试

简介

掌握 PageObject 设计模式应用能力。

知识模块

  • 用户端 App 自动化测试 L3

知识点

  • PO 模式封装 app 自动化测试框架

受众

  • 测试开发工程师

相关知识点

教程地址 视频地址
自动化测试架构优化 自动化测试架构优化
app 弹窗异常处理 app 弹窗异常处理

实战说明

小组内讨论决定实战产品,可选如下两种:

  • litemall 商品管理模块使用 web 自动化方式实现 参考链接
  • 企业微信 成员管理模块使用 app 自动化方式实现

实战要求如下:

  • 功能用例需要覆盖所选功能的测试点,不少于 150 条。
  • 自动化用例要求覆盖功能用例的 30% 到 50%。

场景介绍

在一家知名的互联网公司,公司员工使用企业微信(WeCom)进行日常沟通和考勤管理。近期,公司决定优化企业微信中的添成员管理相关功能,目的是提高团队协作效率和考勤准确度。为了应对这一需求,公司的测试工程师团队被要求对这两个功能进行全面的自动化测试。任务是带领团队设计和实现这些测试,并通过自动化工具确保其稳定性和可靠性。

角色分配

  • 测试组长:负责测试计划的制定,监督测试过程,确保测试覆盖率和质量。
  • 自动化测试工程师:负责设计和实现成员管理相关功能的自动化测试脚本。

剧本剧情

现已确定测试方案,并选择自动化测试框架为 Appium,用例管理用 Pytest 来实现。

挑战一:项目启动与需求分析

  • 场景:会议室
  • 内容
    • 测试组长:召开项目启动会议,明确自动化测试的目标和范围。需要说明此次自动化涉及的功能点,明确需求,并制定测试计划。
    • 任务:
      • 分析成员管理相关功能的需求,找出需要测试的关键功能点。
      • 制定初步的测试计划,考虑自动化测试的可行性。

挑战二:企业微信成员管理(成员添加、编辑、查询、删除)用例设计

  • 场景:测试工程师的工位
  • 内容
    • 根据功能点的需求,设计出测试用例。
    • 每组不少于 150 条。

挑战三:PO 框架设计与实现

  • 场景:测试工程师的工位
  • 内容
    • 在明确需求后,测试团队开始设计企业微信成员管理相关功能的自动化测试方案。
    • 测试组员:采用 Page Object(PO)设计模式进行代码编写,以确保代码的可维护性和扩展性。
    • 任务:
      • 设计企业微信的页面对象模型(PO),并实现成员管理相关功能的自动化测试脚本。
      • 编写自动化测试代码,确保脚本能够顺利执行并覆盖主要功能点。

挑战四:代码优化

  • 场景:测试工程师的工位
  • 内容
    • 对代码进行优化,包括减少冗余代码、提高执行效率。
    • 任务:
      • 对自动化测试代码进行审查,识别可以优化的部分。
      • 优化代码,并重新执行测试,确保所有功能点仍然被覆盖。

挑战五:增加用例数

  • 场景:测试工程师的工位
  • 内容
    • 客户希望在更多的场景下验证成员管理相关功能的稳定性,包括极限条件和边界条件。为此,测试团队需要增加自动化测试用例数,并确保所有新用例都能够通过测试。
    • 任务:
      • 设计并实现更多的自动化测试用例,覆盖极限条件和边界条件。
      • 执行新增用例的测试,确保所有功能点均正常工作。
      • 团队内自动化用例覆盖功能用例 30%-50%。

面试题

总结

  • 基于 page object 模式的测试框架优化