51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2358|回复: 0
打印 上一主题 下一主题

[原创] 请注意,你公司UI自动化可能已经落后别人一个时代了

[复制链接]
  • TA的每日心情
    无聊
    3 天前
  • 签到天数: 1050 天

    连续签到: 1 天

    [LV.10]测试总司令

    跳转到指定楼层
    1#
    发表于 2020-11-9 10:27:50 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
     UI自动化技术,是我们测试工程师绕不开的一个话题,只要提起它来,基本所有测试工程师都能给你说道说道。

      有些人认为它很难,有些人认为它很简单。

      认为它很难的人会告诉你,UI自动化非常不稳定,太难了,实用性也不大,想真正做好难于登天。

      认为它简单的人会告诉你,UI自动化太简单了,十分钟就能入门,不就是写写脚本么,driver.find_element_by_id() 就完事了。

      热饭觉得其实这俩种观点都片面了,都是对UI自动化的不了解造成的误会。真正的UI自动化需要细分,因为它有不同的阶段,各个阶段的也都有自己的特点。

      文章开头先给大家明确一个业内普遍认同的观点:目前行业内的UI自动化已经形成了4个阶段。当前国内互联网公司中能用的起来UI自动化的不多,且大部分都集中在1-2阶段。 如果你的公司也在第2阶段以下,那可真的要加油了。

      下面热饭就给大家简单的概括一下这四个阶段么吧~

      1.【录制回放】

      可能大家第一次接触自动化的时候,前辈或者老师就告诉了你,ui自动化是可以录制的。比如web自动化可以用firfox浏览器的selenium ide来录制成各种语言的selenium脚本,然后执行这个脚本,浏览器就会执行你刚刚所做的一切操作。

      还有loadrunner/badboy/QaRun/SNMP Tester等等一大堆工具,你这时候会想:原来自动化测试,so easy。

      【优点】:上手难度低,不用懂什么代码,自动生成脚本的非常简单迅速。

      【缺点】:这种脚本对环境的依赖性太强了,ui层稍微变化一点点,整个脚本就失效了。甚至很多web页面中的元素的id都是动态的(每次打开都不一样),所以导致这种脚本生成后连一次都走不通。而如想改起来的成本甚至高于自己动手重新写一个脚本了。从维护成本来说的话,这种脚本属于一次性的东西,不值得维护。

      【总结】:这种方式从笔者刚接触自动化的时候,就已经淘汰了,无论是老师还是业界大神,都直言做自动化就不要碰录制回放,这完全是在走弯路。所以如果你的公司是这种,那么就到了你大显神威进军下一阶段的时刻了!

      2.【手动脚本】

      到了这个阶段,公司的测试团队会有一部分专门做自动化的测试人员,他们负责手动去写脚本,相信大家对这个阶段都非常熟悉,因为绝大部分有ui自动化的公司都处于这个阶段。各个端都有自己专门负责自动化的工程师,他们所用的语言,技术可能相同也可能不同,要比喻的话,就是八仙过海各显神通。这时你会想:这就是少林寺的厨房么?太壮观了,简直大神的聚集地!

      【优点】:手动写的脚本质量远超第一阶段的录制脚本,可维护性大大增强,应对ui层的变化也有了一定抵抗力,优秀的会采用非线性脚本,融入数据驱动/关键字驱动/page-object等设计。

      【缺点】:众自动化大佬的力量不能形成一股绳,各种轮子各种造,技术和语言都无法统一,而且人与人之间的水平不同,导致脚本质量也相差很多。最后一旦有人离职,新人大概率只能推倒重来,一切归零。

      【总结】:简单来说就是各玩各的,有人滥竽充数,有人浑水摸鱼,有人独领风骚,有人自娱自乐。领导不可能同时精通多端多种技术栈多语言的自动化来明察秋毫,所以这个阶段的后期大多是放养的状态,最后没有形成可量化的战斗力,惨遭领导嫌弃和淘汰。如果你身处这种阶段,请一定不要被眼前的场景迷惑,要小心并且立即潜心修炼,争取统一ui自动化,把散兵游勇集合起来,好一起迈向下一个阶段。

    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-24 10:28 , Processed in 0.062314 second(s), 24 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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