优质网站建设价格,郑州做网站优化地址,网站代码怎么优化,wordpress相册管理最近有小伙伴私信问我怎么不更新了#xff0c;期待更新#xff0c;甚是感动。
简述下自己近况#xff1a;
还在干测试#xff0c;最近忙活的事情大概是自动化测试、性能测试以及业务等等#xff0c;主打一个啥活都干。 业余时间#xff0c;尝试在短视频赛道搞一些个人兴…最近有小伙伴私信问我怎么不更新了期待更新甚是感动。
简述下自己近况
还在干测试最近忙活的事情大概是自动化测试、性能测试以及业务等等主打一个啥活都干。 业余时间尝试在短视频赛道搞一些个人兴趣领域的创作所以博客不太更新想分享的东西还是有的后续仍然会记录一些工作心得感谢新老盆友的关注
正文
前阵子看到老张写的关于面试的文章我突然想起来我多年前面试字节时候遇到的一个面试题关于如何测试用例的。
印象中好像第一次参加字节的面试也没刷题练习所以开始的算法题就没做好导致后来的表现都不太好所以这个设计用例的题目也没回答好
今天当做是重新归纳总结一下。
一、面试题
面试官问是否用过在线表格之类的功能知道这种功能系统背后是怎么实现的吗如果让你测试在线表格你怎么设计测试用例
我当时的作答就不赘述了如果现在让我重新作答我大概会这样说。
二、关于系统实现
涉及到支持多人实时操作一个文档其实背后大多是基于WebSocket协议来实现而不是我们最熟悉的http协议。就像是即时聊天工具。
WebSocket 是一种协议它允许客户端和服务器之间进行双向通信非常适合实时应用。
我们通过浏览器打开在线表格就会跟服务器建立一个持续通信的通道。然后我们在表格里做的一个个操作都会发送到服务器然后服务器再把这些操作传给其他一起编辑的用户。实现实时更新功能。
但是这种功能有一个特别重要的问题要处理解决冲突。
具体处理算法咱就不知道了反正核心思路就是要把不同用户的编辑操作进行整合来确保最终的文档一致。
从用户体验上来讲可能还会涉及到本地缓存的设计保证用户编辑后的结果在自己界面上是实时显示的然后再将这些操作同步到服务器当碰到网络波动或者延迟的时候用户感知也不会很明显。而且用户就算断网了也不怕编辑的数据丢失。
从提升性能、降低成本角度来看端上与服务器之间的通信传输文档应该也大多使用差异更新而不会每次都传输整个文档内容过去可以减少传输量提高速度。
以上大概是现在的回答因为从开发实现角度以及使用飞书在线文档的使用经验来看差不多如此。
另外面试官问你如何设计的问题大概率也是考察你的知识拓展面如何或者应对新系统的分析能力。
三、如何设计测试
如果真的接手这样的系统那么了解背后设计原理服务架构测试是一定要做的这样才能更好的帮助自己设计测试用例。
面试官问这种问题主要还是看你的测试思路所以千万不要想到一点说一点。
那么结合在线表格这种功能特性就需要分析基本功能测试、实时同步、冲突处理、并发、负载测试、兼容性、权限控制、数据安全等方面了。 可以先说下考虑到的这些方面然后每个方面逐步介绍重要测试点很多常规的测试点可以快速带过。
1.基本功能测试
创建和保存文档单元格编辑单元格输入单元格公式计算单元格拖动 …
2.同步测试
多个用户实时编辑同一个表格多个用户实时编辑同一个单元格冲突处理后最终一致性
3.性能和负载测试
高并发同时打开在线文档响应时间同时编辑表格保存表格内容巨多打开文档的加载时间高负载情况下系统的CPU和内存使用情况。高负载情况下压力持续验证系统稳定性。
4.安全性测试
权限控制测试不同权限级别的用户操作验证权限控制是否有效测试在文档编辑和保存过程中数据是否能够正确加密传输。
5.兼容性测试
跨浏览器兼容性跨操作系统兼容性移动web端
6.用户体验测试
用户体验测试界面易用性界面的布局和设计是否合理错误提示是否清晰明了对于网络中断、服务器错误等异常是否友好处理
其实这也就是在这写文有时间细想可以整理这么多实际中不用说这么细问题也不大但是考虑的面还是要尽量全。
不要小看用例设计的面试题如果你能快速抓住功能的核心点能有条不紊的作出总结既反应出了你的思维能力也反应出了你在这行是否有了对应的沉淀。
如果写了测试5年经验但是一讲用例东一榔头西一棒槌那自然就没好印象了直接印象就是基本功不扎实
还是那句话核心还是业务其他的一切技能都是为了更快更好的完成业务来服务的不能本末倒置现在环境这么差行业又这么卷业务和技术一定得两手抓才可以。