第一篇博客---为什么开始写博客和今日所学

作为一个普普通通的整机测试人员,我一直以为自己还不错,工作中不能参与需求的分析,但觉得在测试执行方面还是有进步,直到我与一名认识的软件测试朋友进行了一番交流,我才知道差距。

当我还在为开发人员勤勤恳恳的抓log时,他已经学习后端设计逻辑,与开发交流设计思路,与产品讨论需求的可行性与风险性。所以,得努力了呀,还不够呀。

为督促自我也为了梳理学习所得,同时也是帮帮我这可怜的打字能力,我决定写博客

学习梳理涉及各路大神的文章,加上一些自己的理解,望海涵、署名、指点

一、如何保证一个功能的质量

        从软件本身出发:

                1.提供与评审后需求相应的功能,实现正确,不多不少严格执行

                2.可以在软件内部模块之间/软件与软件之间进行准确的数据交互

                3.响应效率、资源占用率符合需求所规定标准

                4.兼容不同系统不同平台

                5.具备更新和添加附加功能的潜质

        从用户角度出发:

                1.易理解、易使用,界面清晰

                2.相较于同类产品的相同模块,具备吸引力

二、如何提升测试质量与效率:

        测试执行前(确保主流程在测试环境正确运行 ‘冒烟测试’ ):

                1.需求分析:

                        a、用户群体(根据主要用户群体做相适应的需求分析)

                        b、理解需求

                                ·主流程需求

                                ·功能性需求/易用性需求(非功能性需求)

                                ·显性需求/隐性需求(尽量分析出隐性需求)

                                ·不直观->直观、不可度量->可度量可定量

                        c.分析各需求实现的可行性

                        d.提前预测各需求之间交互可能出现的风险,尽量规避或重点关注

                2.技术分析:

                        a.理解接口设计的逻辑,便于理解复杂业务

                        b.理解数据库表的设计方法和逻辑,便于测试中验证结果数据的准确性

                        c.了解迭代版本所引入的新功能可能对原有功能造成的影响,便于在紧迫工时中更高效地完成测试工作

                        d.提出设计疑点,完全理解设计思路,便于在后续测试工作中高效地定位缺陷来源,减少团队工作量

                3.迭代版本的新功能/新需求:

                        a.迭代版本出来以后,第一时间验证主流程,若未通过需打回

                        b.验证原有缺陷是否解决,若未解决,反应问题

                        c.对于引出的新功能,需与研发人员确定其影响面,后续着重于被影响模块测试

                4.编写用例或测试点

                        根据测试周期,合理选择全面的用例覆盖或针对性的测试点覆盖

        测试执行中(建议与注意点):

                1.拆分功能模块

                        这里我简单地将功能分为了主功能与副功能,主副功能中又被我分成了主干功能与分支功能。这里可以理解为:主功能与副功能是软件所运行的主要流程与附加流程,主干功能与分支功能是实现主副功能所需要的核心功能和优化易用功能。拿微信举例,聊天是主功能,添加好友、好友聊天界面/群组聊天界面、编辑内容、发送内容等为聊天功能的主干,表情包、拍一拍等为优化聊天的多样性而产生的便是分支。微信的副功能我们可以找到公众号、视频号还有各种小程序。当然,这只是个人现阶段理解,不同的人,同一个人不同阶段对一件事物的理解都不相同。

                2.将已拆分功能分解为子功能点

                        这个就好理解多了,一个功能的实现,是多个子功能点共同协作而成的,比方说一个搜索功能就会包含搜索框、搜索联想、搜索结果偏好、搜索结果等多个子测试点。从被拆解软件功能模块到被分解的多个子功能点,更易于测试覆盖全面

                3.交互与异常

                        软件不一定是独立运行的,软件中的功能不会完全没有交互,在测试中,需考虑功能之间的交互和不同软件之间的交互,尽可能的模拟用户场景,包括在用户使用场景中可能出现的弱网,内存已占用过大等异常情况,包括服务器可能出现的返回值异常等情况,都需要尽可能覆盖

                4.客户端/服务端高负载

                        这是对于一个软件性能的测试,可以包含自动化测试来执行繁琐冗长的测试流程,个人理解不算透彻,望指点

                5.兼容性

                        软件在Android、Windows、iOS等系统或平台中的兼容测试,为提高效率,测试执行前便可将测试的执行分成不同系统或平台的类别进行测试

        测试验收(测试准出):

                1、满足需求

                2、用例经过评审并完全执行

                3、测试覆盖率

                4、缺陷解决率

                5、性能指标

                还有很多,各路大神的文章中不尽相同,各个公司、项目要求也不一样,便不再赘述

 

以上就是我今天想要分享的一些东西了,谢谢

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值