51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1065|回复: 0
打印 上一主题 下一主题

[转贴] 你们公司的前端项目是如何做测试的?

[复制链接]
  • TA的每日心情
    擦汗
    4 小时前
  • 签到天数: 1026 天

    连续签到: 1 天

    [LV.10]测试总司令

    跳转到指定楼层
    1#
    发表于 2022-5-31 09:54:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    前端项目也叫web端项目(通俗讲就是网页上的功能)是我们能够在屏幕上看到并产生交互的体验。
      前端项目如何做测试
      要讲清楚这个问题,先需要你对测试流程现有一个全局的了解,先上一张测试流程图:

    接下来下面我们从需求阶段-开发阶段-测试阶段-发布阶段 共四个环节来还原一次完整的测试过程。
      备注:前端项目如何测试,在以上四个环节中的"测试阶段"有详细阐述。
      一、需求阶段
      在项目开始后,产品同学提出了若干需求,经过需求评审之后,最终给出了产品需求计划和迭代文档。
      在这个阶段,测试跟开发同学要参与需求评审,在需求评审的过程中,开发同学会开始思考怎么做。
      作为测试,有哪些不理解的,要及时提出来,让产品经理给出更清晰的解答。
      最终,经过需求评审和澄清,我们了解了需求的细节,有哪些功能,要测哪几个点,要做到大概心里有数。
      二、开发阶段
      需求已经清楚了,开发同学就要进入开发了。同时呢,我们开始确定测试方案(工期评估、人力安排),根据需求编写测试用例(一般使用xmind或excel,根据自己习惯和团队规范来选择)。
      为了防止测试用例遗漏,我们要做一次用例评审,邀请开发和产品经理参加,拉齐各方对需求的理解,最终产出一份完整的测试用例。
      三、测试阶段
      在测试阶段,分为后端测试和前端测试,划分如下:
      1.前端测试部分。(用户在前端的操作,包含前端样式,交互效果等)
      2.后端测试部分。(前端对后端的接口请求,包含增删改查、数据处理的逻辑等)
      说明:有些公司前后端测试分别由不同的团队或测试同学跟进,有些公司前后端测试都由同一个团队或同一个人跟进。
      后端测试一般会先于前端测试介入,为啥要后端测试先开始呢?
      来看一个小片段(下例中,前后端测试不是同一个人):
      开始测试了,前端测试同学一看,页面没有展示预期的数据。好家伙,顺手给前端小哥提了一个bug。
      前端开发经过排查发现直喊冤:后端没返回数据,臣妾也做不到呐。回头便将bug指给后端研发小哥了。
      后端小哥一看:这个bug刚刚已经有后端测试同学提了 ,别着急哈,正在解决。
      前端测试同学心想:敢情我这是白忙活了呀,怎么避免这个问题呢?
      后来,经过大家的讨论决定:后端测试先开始,保证接口基本功能正常后前端测试再介入,避免重复劳动,提高工作效率。

    首先开始的是后端测试,后端的测试范围如下:
      1、功能测试
      输入(入参)的测试:必传和非必传、参数长度、数值类型、正常和异常、有、无和为空,以及参数组合。
      输出(返回)的测试:主要看正常返回的响应内容,和异常返回的响应码和提示语。
      2、异常测试
      重复提交:多次重复提交,连续重复提交,特别是涉及到支付、交易金额相关。
      并发:两个以上用户操作同一场景,争夺资源、死锁等情况。
      事务测试:多个连续步骤才能完成的业务流程。
      3、性能测试(一般来说新接口需要做,老接口根据实际需求来定)
      主要看响应时间、吞吐量、并发数、服务器资源使用率、cpu、内存、io、network等。
      这些测试内容基本都可以通过接口测试来完成,接口测试的工具推荐Postman。
      接口稳定之后,可以写成自动化测试,方便后续的回归测试。
      这里用到的自动化测试框架,小编使用的是java中的Testng(常用的还有JUnit4),不同的语言有各自的测试框架(比如python中的Unittest和Pytest)。
      后端测试完成一遍冒烟测试之后,前端测试就可以开始了(重点来了,重点来了)
      前端的测试范围如下:
      1、UI测试
      ·验证所有页面字体的风格是否一致
      · 背景颜色应该与字体颜色和前景颜色相搭配
      · 图片的大小和质量是否正常
      2、功能测试(也称为e2e测试)
      · 基本的功能是否符合预期
      · 模拟用户操作,交互流程是否正确
      3、兼容性测试
      · 平台兼容性,使用用不同的 操作系统平台对网站进行测试。最常见的有 Windows、macOS、 Linux 等。
      · 浏览器兼容性, 查看不同浏览器中的兼容性问题。
      · 分辨率测试,在不同分辨率下的显示效果,避免分辨率低时界面文字显示太大,而分辨率高时又有些文字显示时太小。
      4、性能测试
      · 页面首次打开的耗时
      · 页面加载时间
      · 频繁操作是否奔溃
      5、稳定性测试
      · 页面是否白屏
      · 掉电重启,断网重连后是否正常
      · 长时间运行是否会奔溃
      6、易用性测试
      · 常用快捷键 (刷新,关闭等)
      · 常用习惯性操作(回车搜索)
      · 便捷性功能(记住密码等)
      在测试的过程中,要对照测试用例来执行,避免遗漏。
      每执行完一个测试用例,要记录实际的效果,不符合预期的要在禅道(或其它项目管理平台)记录bug,并指给对应的开发同学。
      等所有的bug都解完了,需要完整的流程走一遍(回归测试)。
      四、发布阶段
      前后端的测试case都执行完了,bug也修改好了,就可以发送测试报告了。
      一切妥当之后,就等一个良辰吉日将项目发布上线。
      所谓吉日,一般要避免周五或节假日的前几天,因为万一上线后有问题,研发小哥们都在休息,找不到人修复,影响到用户体验可就要挨老板批了。
      所谓良辰,一般是在夜黑风高的晚上,因为这个时候用户基本休息了,万一上线后有问题及时回滚就行了,不会影响到用户体验。煞费苦心,一切都是为了用户着想!
      上线后,一般会通过灰度放量,观察线上效果,没有问题再逐步放量,最终完成项目的全量发布。



    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

    x
    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-9-29 13:18 , Processed in 0.090509 second(s), 24 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表