51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

测试开发精英班,通向高级软件测试工程师【长期招募】博为峰网校招聘兼职讲师!【直播预售】接口测试行业大佬带你从青铜上王者一站式软件测试平台
【第95期】:引入并推广接口自动化测试!【专题】手把手教你掌握测试必备框架—TestNG 三分钟颠覆认知 2017软件测试调查报告独家发布 自学软件测试那点事
查看: 2018|回复: 19

【你来问我来答第95期】:如何在零基础团队引入并推广接口自动化测试?

[复制链接]
  • TA的每日心情

    2018-7-30 09:36
  • 签到天数: 493 天

    连续签到: 1 天

    [LV.9]测试副司令

    发表于 2018-9-3 11:00:08 | 显示全部楼层 |阅读模式

    论坛ID:wanglidong1224
    真实姓名:王练
    现任公司: Raisecom
    现任职位:部门经理
    工作经验:2009年计算机硕士毕业,一直从事软件测试相关的工作。从基础测试工程师做起。目前担任 Raisecom平台测试部门经理。有丰富的软件测试实战经验,擅长接口自动化测试,Web,桌面UI自动化测试,性能测试,有测试团队管理和软件质量提升经验,持有软考系统分析师和系统架构师认证。
    嘉宾语录:
    如何才能持续成长,是每一个测试人员都绕不开的话题。入行之初,你可能会困惑于技能选择的方向和掌握的方法,测试前期,你可能会苦恼于如何提升自己的技术水平,技术水平达到瓶颈期,你可能又急于寻求突破和上升。但,还好总会有那些“走在我们前面的人”,别人留下的“脚印”和路径可以给予正在成长阶段的你很多启发与指引。在这专栏里,王老师将结合进十年的测试从业经验,设身处地去思索,去剖析,去拆解软件测试不同阶段可能面临的实际困惑与问题,并给出可供参考的答案。在零基础团队引入接口自动化测试方面,王老师有着清晰的路径和完整的体系,帮助你的测试之路走的更稳,更远。
    嘉宾作品:
    实战测试开发三部曲之大数据可视化管理平台 点击进入>>>

    各位会员可以在09月10日前以回帖的方式向客座专家提问。
    (请大家围绕本期客座专家的擅长领域进行提问、探讨)
    客座专家将在09月11日—09月30日为大家集中解答。

    机会难得,欢迎大家踊跃提问!


    本帖子中包含更多资源

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

    x
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    前天 07:55
  • 签到天数: 1102 天

    连续签到: 5 天

    [LV.10]测试总司令

    发表于 2018-9-3 13:27:10 | 显示全部楼层
    王老师,你好,在初创自动化团队的初期,有什么注意事项吗?目前团队初创,技术未统一,都是一边学习,一边建设,求指点!谢谢
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    擦汗
    3 天前
  • 签到天数: 360 天

    连续签到: 4 天

    [LV.8]测试军长

    发表于 2018-9-4 09:23:21 | 显示全部楼层
    自动化从无到有的过程很艰难。尤其是对于技术能力欠缺的团队。
    会走很多的弯路。请问老师自动化从零到有怎么样才能少走弯路?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2018-9-4 11:00:15 | 显示全部楼层
    王老师,怎样提高测试的质量和效率?求指点迷津
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2018-9-4 11:27:27 | 显示全部楼层
    jingzizx 发表于 2018-9-3 13:27
    王老师,你好,在初创自动化团队的初期,有什么注意事项吗?目前团队初创,技术未统一,都是一边学习,一边 ...

    对于初创的团队,不同的公司,不同的业务方向都会面临不同的困难。
    我从管理方面和技术方面进行分享。
    首先,管理方面。自动化团队短时间内无法给出成效,曾经有人问过我:你们现在做的自动化测试,对于公司而言,成效体现在哪里?
    这是一个领导的原话,其实对于高层领导而言,并不特别在意人员能力提升,团队的技术底蕴提升,他关心的是你做的这个事,给业务、给公司带来什么好处。
    初创团队在技术上,可以进行边建设边学习,但对于领导的"安抚"和兄弟部门的沟通才是需要注意的。
    要尽可能让领导增强信心、加大耐心,同时要把阶段性的成果,如实的汇报,而且这些成果一定要以领导的预期为结果导向。
    对于兄弟部门,如果是从来没有过自动化团队的情况,就会更复杂一些。
    自动化团队是作为平台输出,还是某个部门(或业务线、产品、项目)的排头兵,作为团队负责人,要有明确的定位。
    对于自动化团队出现后的流程变更、人员培养模式的变更,都要根据团队的定位与开发部门、质量部门、人力等做相应的沟通。
    第二,技术方面。技术选型一定要做,一方面在选型的过程中可以比较优劣,选择最适用的。另一方面在选型的过程也是考验人的过程,
    根据选型工作的完成情况,对团队的人员进行分级,为后续自动化推广做好分工。这里面,团队负责人的作用非常关键,需要密切关注
    行业的动向,对选型的技术要都有所涉猎,重点的技术要了如指掌。技术选型的速度一定要快,结合第一条和领导沟通的情况。
    技术框架确定后,结合团队人员的能力情况,进行分级,部分代码能力强的进行基础框架开发工作;其他代码稍欠的同学,尽量减少代码负担,
    重心在于把业务落地到框架中。无论是框架开发还是,业务落地,作为团队负责人一定要负责具体的工作,防止开发出的框架不好用、无人用。

    初创团队困难很多,但也有好处,由于是初创,领导会有一些容错度,所以即便是一点点小进步,也是测试团队的大进步。
    祝你顺利。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2018-9-4 11:28:06 | 显示全部楼层
    applepen 发表于 2018-9-4 09:23
    自动化从无到有的过程很艰难。尤其是对于技术能力欠缺的团队。
    会走很多的弯路。请问老师自动化从零到有怎 ...

    你说的技术能力,可以归结为代码能力。自动化但从技术角度看,要想干成,需要代码能力和业务能力。
    对于从无到有的过程,代码能力更为重要。而从1到100,业务能力就更重要了。
    在从无到有的时候,为了避免走弯路,一定要做好调研,就是技术选型了。
    我们说的弯路,实际上是对工作量的一种优化,引入不好的框架,后期脚本开发、脚本和框架维护、移植都会带来大量的工作。
    也可能会出现,框架无法适配业务需求的情况,比如在自动化后期,有可能会联合质量评估体系,有可能会联合测试管理、项目管理体系。
    所以,在开展自动之前一定要做好调研。业界在各层面自动化的方案都做一下对比,对比的时候可以分层进行。
    首先,在是否开源、是否免费、是否能接受商用等大的方向进行对比,选择备选的几个方案进行细化。
    之后,进行细致的对比,这里就需要进行一些demo性的实验的,对比的方面我总结为自动化的生态系统:
    1、基本元素:UI的界面识别,接口的请求类型。
    2、编程语言:框架使用的编程语言是否通用。
    3、开发环境:是否提供友好的IDE,或有可替代的IDE。
    4、容错处理:是否支持场景恢复,防止用例的批量失败。
    5、用例管理:用例的灵活管理。
    6、数据驱动:是否支持进行数据驱动、关键字驱动。
    7、测试报告:测试报告是否详细、美观。
    8、并发执行:测试执行效率能否提高。
    9、扩展性:与其他系统集成的难度,自身模块的可替代性。
    10、持续集成:与持续集成结合的难易程度。
    当完成这些方面的对比后,相信已经有了比较清晰的选择了。
    之后就是有计划的实施自动化的过程。
    以我的经验来说,自动化往往是测试人员自己在踢自己的屁股,因为项目上的需求是完成测试,至于途径是自己选的。
    所以,一定要有革自己命的决心,只要制定好的自动化目标,牙咬碎了也要完成!
    祝你顺利完成任务。不要给自己太大压力,不走弯路是不可能的,尽量想多点,能避免则避免。避无可避,以目标优先!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2018-9-5 09:52:26 | 显示全部楼层
    xiangyue 发表于 2018-9-4 11:00
    王老师,怎样提高测试的质量和效率?求指点迷津

    王老师,怎样提高测试的质量和效率?求指点迷津
    这个问题和本次主题不是特别相关,对于测试团队,想要提高测试的质量和效率,是需要认真思考的。
    首先说提升测试效率,肯定是引入自动化测试。根据团队和公司的整体情况,分步引入自动化测试。
    自动化除了功能相关的UI、接口、单元之外,性能测试的自动化也可以在合适的时间引入。
    再说测试质量的问题,自动化只能解决效率的问题,但测试质量需要多个团队的配合才能完成。
    从务实的角度,测试质量需要有个非常科学的指标进行衡量,我的建议是在指标中加入如下参数:
    1、缺陷泄漏率 2、测试覆盖率 3、千行代码缺陷数
    当然,还有很多参数会影响测试质量,这三点是必须的。
    在有了科学的衡量之后,与QA、开发以及相关人员制定规则,进行实施。
    在这个过程中,自动化是手段,不是目的。
    祝你顺利。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    前天 10:08
  • 签到天数: 545 天

    连续签到: 5 天

    [LV.9]测试副司令

    发表于 2018-9-6 14:31:42 | 显示全部楼层
    支持一下,王老师长得好帅气
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    前天 10:08
  • 签到天数: 545 天

    连续签到: 5 天

    [LV.9]测试副司令

    发表于 2018-9-6 14:34:53 | 显示全部楼层
    请教2个问题:
    1.任何项目都适合自动化吗?在我的判断来看用不上自动化,但是领导希望做这个东西来提示部门含金量,这时候有必要去据理力争吗?
    2.在初创时,对于人力的投入如何安排合理?目前团队的人力紧张,对代码这块也很薄弱
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2018-9-7 11:04:39 | 显示全部楼层
    libingyu135 发表于 2018-9-6 14:34
    请教2个问题:
    1.任何项目都适合自动化吗?在我的判断来看用不上自动化,但是领导希望做这个东西来提示部 ...

    感谢参与交流。
    1、不是所有项目都适合自动化,并且自动化不能解决所有问题。
       项目周期短,功能不稳定,做自动化就是自己给自己挖坑。最终的结果是:开发改功能的代码、测试改测试的脚本,劳民伤财。
       只有功能稳定了,才具有进行功能自动化的前提。如果能保证接口的稳定,前期引入接口自动化是可以考虑的。
       项目中,领导有很大的话语权,做不做自动化还是要综合考虑。相信领导不会仅仅为了部门的含金量,牺牲掉项目整体利益的。
       所以,遇到这种情况,不要据理力争,要实事求是。具体业务测试需要多少工作量,引入自动化会牺牲掉多少工作量,带来的收益率是否核算。
       实事求是的帮助领导算好项目和技术含金量的帐,相信领导会有明智的选择的。
    2、我理解你的问题是指初创的测试团队,如何安排业务测试和测试开发的工作。
       初创团队以业务测试为主,首先将产品的业务测试承接起来,交付让人放心的产品,再谋求技术上的进步。
       在业务测试中,根据具体的需求,再引入对应的测试开发工作。
       测试开发包括很多方面,除了框架开发、自动化脚本编写,当业务测试遇到人力无法解决的问题时,都会涉及到。
       比如数据的脚本准备,网络协议的模拟等等,所以基于具体业务的需求,进行测试开发,才会有的放矢,也会真正反哺项目。
       测试开发和业务测试,不是对立的关系,是共赢的关系。通过测试开发完善业务测试;通过业务测试证实测试开发。
       
    对于代码薄弱这块,不用过于担心,代码只是逻辑的实现,熟能生巧。各种测试框架也都比较容易上手。
    最后,祝你顺利。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2018-9-7 11:06:02 | 显示全部楼层
    libingyu135 发表于 2018-9-6 14:31
    支持一下,王老师长得好帅气

    见笑了,这是王老师20年前的样子。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2018-9-7 11:06:13 | 显示全部楼层
    libingyu135 发表于 2018-9-6 14:31
    支持一下,王老师长得好帅气

    见笑了,这是王老师20年前的样子。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2018-9-9 20:57:25 | 显示全部楼层
    QTP作为黑盒测试工具,对于小公司适用吗,一直学的很艰辛,如果不适合,有其他的测试工具可以推荐吗
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2018-9-10 11:11:39 | 显示全部楼层
    17750219806 发表于 2018-9-9 20:57
    QTP作为黑盒测试工具,对于小公司适用吗,一直学的很艰辛,如果不适合,有其他的测试工具可以推荐吗

    QTP是很经典的自动化测试工具,除了黑盒自动化外,接口、API测试也是支持的。
    同时QTP周遭的配套很全,比如有测试管理的QC/ALM工具,是非常完整的自动化系统。
    我理解你说的艰辛,开始学习自动化也是从QTP开始的。
    QTP上手慢有两个原因:
    一个是上面说的,QTP是完整的自动化生态系统, 但也是比较封闭的,它已经很完整了,所以不希望用户有太多天马行空的想法,所以会限制你的自由,就会让人感觉无所适从。
    另一个,QTP基本是所有学习自动化人的第一次尝试,没有自动化的经验,很多问题没想明白,有些问题第一次处理。其实换做其他工具也会遇到的,只是第一次尝试,就会感觉一步一个坎。所以不要怀疑QTP,更不要怀疑自己。
    艰辛是个过程,不知道你有没有类似的其他艰辛的过程。趟过当前的问题,回过头来,你会发现,原本没有那么难。
    QTP是否适合小公司,要看具体的产品、业务,还有公司的自动化容许度。如果想要快速出脚本,看效果,QTP是很适合的。但要考虑两个问题,1、收费的问题,未来公司能否接受破解使用或者花钱使用;
    2、资料问题,由于QTP的封闭性,网上的资料比较个性化,不一定适合当前的项目,遇到问题得到的支持会有些欠缺。
    能够完成自动化的工具有很多,QTP、Selenium,IBM的RFT,Ruby写的watir,印度的sahi。
    根据具体产品的形态、需求,公司的容许度,进行选择。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    2016-10-16 15:07
  • 签到天数: 2 天

    连续签到: 2 天

    [LV.1]测试小兵

    发表于 2018-9-12 14:44:48 | 显示全部楼层
    视频直播这一块怎么做压力测试
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 4 天前 | 显示全部楼层
    逃不掉 发表于 2018-9-12 14:44
    视频直播这一块怎么做压力测试

    这个问题和主题太不相关啦~~,也可以一起交流一下。
    视频直播,是分很多平台的,比如pc端的,手机端的,pc端的有分web的和客户端的。
    不同的平台协议是不同的,压力测试实际是对协议的模拟,所以要针对实际的产品进行协议的分析。
    对于直播系统,除了平台之外,还需要考虑阶段性的测试,大体上直播系统分为采集---传输----回放。
    压力测试的重点在于寻找瓶颈,所以要对各个阶段的协议进行模拟和测试。分阶段后,就可以针对各个阶段进行重点的数据构造和协议仿真了。
    协议仿真需要一定的网络知识,通过实际报文的分析,选择合适的工具进行测试。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2015-12-10 15:17
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]测试小兵

    发表于 4 天前 | 显示全部楼层
    王老师你好!
    我们公司现在产品业务比较稳定,打算做接口自动化,目前遇到以下几个问题想请教一下:
    1、首先就是人员的技术功底不一样,而且有功底的,大家擅长的语言也不一样。
    2、部分人员觉得现在测试任务比较紧,如果分出部分资源出来做接口自动化,业务测试上面会有压力。
    以上2个方面应该来如何平衡?
    3、我们团队没有接口测试相关的技术领头人,大家都只有边学边试着做,从无到有,应该按照怎样的步骤来走?老师能否提供一个系统的学习路线呢?
    问题有点多,麻烦了
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2018-9-23 02:56 , Processed in 0.077212 second(s), 25 queries .

    Powered by Discuz! X3.2

    © 2001-2018 Comsenz Inc.

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