GUI是否适合自动化的讨论
做了一年多的UI自动化,每天都因为看到自动化而纠结,一直在思考他的存在到底应不应该。“自动化测试听起来很神秘,学起来很简单,用起来很麻烦”,这句话很是经典哇!
自动化开发和应用的过程中,大部分的时间其实是花费在了编写脚本,异常/错误处理和Debug上面。在运行过程中发现的问题基本可以分为一下三类:
第一是产品的问题,我们可以报bug了;
第二是你测试程序的bug,你需要fix;
第三是测试框架的问题。
在项目迭代的过程中新功能测试基本靠手工测试。项目时间紧,客观上没有时间去编写新功能的脚本,即时有时间编写自动化脚本也会hold在频繁的需求变更,此时自动化反而增加了手工测试者的工作量。
系统测试阶段,是否自动化真正减少了大家的工作量,除去0级用例,在跑系统测试的时候如果直接筛选掉0级,是否会有或无意识的去看0级 ,是否会真的放心自动化跑过的功能无bug。冒烟测试阶段,自动化在跑 可手工也在测试,这个工作量相对于以前来说并没有减少。
手工发现的bug和自动化发现的bug对比
目前情况看,自动化发现的bug相对于他的开发和维护成本来说还很少
bug:莫名其妙的程序崩溃 ,但是在用户处这些并不会出现或是很少出现此类bug的优先级我认为就会比较低;需求变更的bug花大力气开发自动化 不是仅仅为了在同事有疑问的时候 我们说这个是需求变更,需求变更相对与bug来说对用户并无影响,只要不影响我的功能即可。
自动化发现的bug真的很少,但他的前景貌似很多人都很看好,XXX好处!但是在自动化的路上已经让整个团队疲惫不堪,到底要不要坚持下去呢 做了一年多的UI自动化,每天都因为看到自动化而纠结,一直在思考他的存在到底应不应该。
“自动化测 ...
riwater 发表于 2011-12-15 00:09 http://bbs.51testing.com/images/common/back.gif
自动化不是万能的,但是没有自动化是万万不行的。 GUI自动化 又不是为了发现Bug。
想发现更多的Bug还是得尽量多做手工,让测试提前介入。 回复 3# shanxi
GUI自动化不是为了发现bug
那干嘛要自动化呢? 回复shanxi
GUI自动化不是为了发现bug
那干嘛要自动化呢?
riwater 发表于 2011-12-15 12:25 http://bbs.51testing.com/images/common/back.gif
regression 有大规模GUI自动化测试的成功案例吗,能达到什么效果? 确实有时候是这样。
但是碰到大量的循环或者调用,不用工具的话,会很累把。 有大规模GUI自动化测试的成功案例吗,能达到什么效果?
billhu 发表于 2011-12-16 15:27 http://bbs.51testing.com/images/common/back.gif
据我所知,基本上我接触的每个公司都在做大规模的GUI自动化。效果当然不是理想了,但也没办法,不做更不行。一般来说能在API level做就在API上做,主要的scenario在UI上做,negtive test cases少做。 个人觉得,不管是GUI自动化还是功能自动化,首要目的不是找bug,而是验证已有功能是否正确。自动化效果到底如何其实不用看脚本,看自动化测试用例就可以,而且自动化做到什么程度要有明确的把握,追求完美是不可能的。如果打算通过自动化找出很多bug,这些bug必须提前预料到,并且反映在自动化测试用例上,其实是测试用例设计的问题,看其覆盖率多高,跟自动化人员的技术能力无关。原因很简单,不同于手工测试自动化脚本无法智能判断bug,所有的bug都是提前定义好的。而且自动化比寻找bug更重要的是处理各种异常,保证在多种系统状态下运行正常。要做到以上程度确实花费大量工作量,究竟有没有必要做到这种程度看预算安排了 你这个问题很好。这个问题已经涉及到自动化测试项目失败的核心原因:维护。
首先,适不适合对新功能做自动化测试,这个主要取决于进度要求,时间不足的话就没办法做的。合理的框架可以大幅减少对新功能实现自动化需要的时间。
第二,自动化测试能不能发现bug,能发现多少bug。这个其实自动化测试能发现的bug,大部分在编写自动化测试脚本的时候就发现了。一般不指望自动化发现跟手工测试同类型的bug。但是可以用它去发现一些手工测试很难发现的bug。
第三,不放心自动化跑过的case是否就无bug了,说明你们的测试脚本里assertion做得不充分。这是脚本设计的问题或者框架设计的问题。
第四,莫名其妙的程序崩溃问题,再次涉及到框架设计问题。一般让fail掉的脚本都自动重跑一次就可以解决这个问题。
核心问题还是测试框架的设计是否合理。这里涉及到自动化测试的核心技术,就不分享了,太麻烦而且写了也没人看。 这个不是很懂!
http://www.kitarm.com/images/resized/images/stories/slideshow//kpad-2_938_288.jpg 回复shanxi
GUI自动化不是为了发现bug
那干嘛要自动化呢?
riwater 发表于 2011-12-15 12:25 http://bbs.51testing.com/images/common/back.gif
你自动化的定位就错啦,自动化是质量保证,快速回归测试,不是发现新Bug。
如果有新Bug,你调试脚本时就发现了。 :)
页:
[1]