面试技巧

1. 如何实现一个测试框架?

  1. 一定要关联到实际的业务需求与公司需求
  2. 技术的完整性
  3. 开始实现
    1. 单间自动化体系团队
      1. 了解公司具体情况和需求
      2. 基于一个系统试点
      3. 搭建一个demo
      4. 开始运行, 产出内容
      5. 优化与调整, 形成稳定的测试过程
      6. 启动视频分享回忆
      7. 准备培训并推广
      8. 推广到实际应用, 不断调优
    2. 已有自动化测试框架团队
      1. 熟悉现有的测试框架
      2. 了解核心的测试业务
      3. 基于工作需要, 结合测试框架实现工作产出

2. 自动化测试框架中关联技术的详解

  python

----------初级----------

自动化模块: selenium/appium/request

设计模式: 关键字驱动/ POM

----------中级----------

数据驱动: Excel, Yaml, Json, Py

测试用例: unittest, pytest

测试报告: HTMLTestRunner, Allure

邮件模块: SMTP

-----------高级----------

配置管理: 环境(服务器, 数据库, tomcat)

日志: logging

代码管理: git

持续集成: jekins

----------优化----------

测试用例的并发: 多任务并发机制, 异步形态实现用例读取与执行

测试框架分布式的结构设计:主从结点(通过路由结点下发测试任务, 由子节点执行测试用例, 最终集成测试完成结果到一体化)

 

自动化测试技能第一重要点: 设计思维

 3. 自动化测试的重点面试题

1. 你是否懂得自动化测试? 

  落地具体能力, 而非单纯说名词

2. 如何实现自动化框架在公司内落地推广? 

  1. demo会议, 介绍现有框架使用规范和情况
  2. 部署框架, 结合指定项目试点
  3. 生成使用文档, 推行与培训
  4. 基于公司需求, 优化框架

3. 了解过哪些数据驱动形式, 优劣?

  1. Yaml: 优点: 易于维护, 数据轻便     缺点: 学习成本高, 不直观
  2. Excel: 优点: 维护好, 稳定, 零成本    缺点: 固化, 死板
  3. Json: 优点: 格式简单, 易于解析    缺点: 推广性不强

4. 如何进行测试框架封装?

1. 关键字驱动

  将所有selenium, request, appium进行二次封装, 结合驱动实现关键字调用, 从而实现自动化测试

2. PO模式

  ui自动化设计模式, 单个系统的自动化测试覆盖

5. 优化现有的自动化测试框架

1. 测试框架的分布式结构设计和多用例并行处理