1. 破题:
问题是:怎么测电梯
前提条件是:这是一道软件测试工程师面试题,而非真正的电梯测试人员的面试题
第二个前提:我没有需求文档,但我了解电梯的基本业务功能
思路:把电梯当作一个我了解基本业务功能,却没有需求文档的软件来进行测试。也就是说这里考察两点:
第一,你能不能测没有需求文档,或者需求文档不完整的东西
第二,你能不能把测试用例设计方法应用到实际工作上去
还隐含第三点,你的测试思维是否完整,测试范围能想得比较全面吗。
2. 确定测试范围
以下是黑盒角度的
功能:关注电梯的基本功能是否实现
性能:关注电梯的性能指标,如负重多少kg
安全性:关注电梯的安全性,如超重报警,下坠制动
用户体验:关注电梯的舒适性
以下是白盒角度的或其他的
效率:关注电梯控制逻辑的内部算法
接口:电梯和电梯控制器,电梯和大楼,电梯和摄像头,电梯和对讲机(报警装置)的接口测试
零件:电梯的零件的单元测试
兼容性:电梯和其他东西的兼容性
3.具体测试用例的设计
3.1功能测试:
思路一:基于用户界面,如按钮,分电梯内的按钮和电梯外的按钮;电梯内分楼层键、开关门键、报警键。然后对这些键,一个一个测过来。同时关注显示屏,电梯内外的显示屏均显示电梯当前所在楼层和运行方向。
思路一就是典型的单元测试。
思路二:单个功能测好之后,再把单个的功能组合起来进行测试(集成测试),集成测试时可以根据电梯当前状态是上行、下行还是停止(状态机)来设计测试用例,以保证覆盖率。
比如上行时按XX按钮会怎么样。此时可以向面试官提出等价类划分思想,为何我要测这些按钮,如何划分等价类。
思路三:集成测试完毕后,开始测试真实用户场景(确认测试/验收测试/工作流测试),此时可以设计常见的用户场景(场景设计)并进行测试。如大量用户从1楼进入,并去不同楼层。又或者大量用户从不同楼层下到1楼。
思路四:不同品牌电梯的比较,电梯和电梯国际标准的比较,电梯和安装电梯的大楼用户需求的比较等等
思路五:特殊需求的测试,如摩天大楼可能要求高速电梯。百货大楼可能要求观光电梯。
3.2性能测试:
思路一:测试电梯负载单人时的运行情况(基准测试)、多人时的运行情况(负载测试)、一定人数下较长时间的运作(稳定性测试)、更长时间运作时的运行情况(疲劳测试)、不断增加人数导致电梯报警(拐点压力测试)
思路二:不同层次的性能,如零部件性能等
3.3安全性测试:
软件的安全性测试我也不了解。只能瞎说了。比如,暴力破坏电梯,下坠制动测试,超重警报、超时警报的测试,报警功能的测试,监控摄像头测试,火灾时应该不让用户使用,但又要让里面的人能出来等等。
3.4用户体验:
电梯是否有地毯,夏天是否有空调,通风条件,照明条件。等等
3.5效率:调度算法是否合理,是否最优,按错键是否可以取消
3.6零件: 零部件是否合格
3.7接口:电梯和其他设备的交互,如报警装置、中央空调、监控室等等如何交互,是否工作正常
3.8兼容性:电梯的整体和其他设备的兼容性
以上,是建议的答案。一般把整体思路说一下,再把3.1功能测试部分重点讲一讲就ok了,面试官应该会满意的。
如果把电梯换成电话,测试思路还是这个,顶多就是换一些具体用例。或者电梯换成其他任何东西都一样的,关键是,把它当作软件,展示测试思维。
阅读原文,查看招聘信息~