分享

【哲学角度看软件测试】要想软件“一想之美”,UI 测试少不了

 新进小设计 2022-08-07 发布于北京

摘要:软件测试的最高层次需求是:UI测试,也就是这个软件“长得好不好看”。

为了让读者更好地理解测试,我们从最基础的概念开始介绍。以一个软件的“轮回”为例,下图展示了一个软件的研发流程。随着软件规模的不断增大,一个软件动辄百万行的代码,想要单靠人工检查或者程序猿的技术本身保证质量已经变得不现实。因此,测试成为软件流程中必不可少的环节。

 

 

测试过程中会涉及不同的需求,以Mike Cohn在他的著作《Succeeding with Agile》一书中提出的“测试金字塔”宝图镇楼为例, 从下至上对应的测试需求分别为:单元测试,服务测试,用户界面测试。

 

 

这个金字塔形象地反应了笔者这些程序猿面临的问题。我们知道马斯洛的需求层次理论,在其著名的“马斯洛需求金字塔”中展示了一个人的不同层次的需求。笔者感觉这两个金字塔有很多相似之处。

 

 

个人最基本的需求是生理需求与安全需求,对应测试中就是“单元测试”。如果一个程序中的单元测试都不能保证,其上层的测试就无需谈起。而这部分也是需要花费大量精力去做的事情。每个开发人员在编写“单元测试”,并且完成测试之后,保证自己的服务能够正常运行才会考虑服务测试。就相当于自己吃饱了,安全了,才有力气和意愿去和别人交流。

此时,我们进入到下一个层次“社交需求”,服务之间的通信就像人类之间的“社交”,大家都要遵循一定的规则(程序接口,各种规范),才可以进行顺畅的通信。在日常生活的这个“交流”过程中,难免会出现一些误差,导致错误。然而,软件中出现一点点错误,可能导致不小的麻烦。例如2017年的这个新闻:以色列报纸“哈雷兹”报道说,一名巴勒斯坦男子被以色列警方逮捕,当时他在自己的脸书账号上写了“早上好”,Facebook自动翻译服务错误地用希伯来语翻译为“攻击他们”,用英语翻译为“伤害他们”,Facebook对此表示歉意。

软件测试的最高层次需求是:UI测试,也就是这个软件“长得好不好看”。这里引用一个词语“一想之美”,每个人心中关于美的定义都不相同,那什么样的软件才是“美”的?我们又应该如何测试?(终于凑够了领导要求的字数)。

 

 

最后:

也欢迎大家关注我的微信公众号

给大家整理了很多的一线大厂面试题,以及一些原创面试题精讲。

 

目前测试平台项目研发已经完成并且在Github开源,有兴趣的朋友可以去Github下载

https://github.com/ooqitech/ATP

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多