搭建自动化前期的准备

慢慢摸索自动化测试有好几个月了,看了几个学习视频,简单的阐述一下自己的观念。

1.测试的基础

测试的金字塔理论大家都非常的清楚,底层是unittest(单元测试),中层是集层测试,最高层是ui的测试。

金字塔的难度设置:底层最低  ui级别最高

单测:一般单测由开发人员制定,我们从旁给出设计测试用例的意见。原因:没有人比开发更懂自己的代码。单测思想很简单,但是很重要,是金字塔的最底层,底层稳固了金字塔才可以建高。

ui测试:难度高是因为ui的测试都是黑盒的测试,通过自己的测试用例想去踩中出问题的方法是非常的困难的。只能通过基于ui的表现去定位大概的问题,有可能执行千万条数用例,也找不出bug。

金字塔的理论很简单,底层的东西是最重要的,一个工程的核心是代码,代码是开发输出的,所以一个项目的质量大部分是取决于开发。qa只是负责辅助开发,当项目的质量有所偏离,尽量的提高产品的质量。

上面是基于理想的公司情况,一般的公司的程序都是倒着来的。嘻嘻,幸运一些的可以遇见。ps:我们公司都是大牛们,当然ok,大牛们果断的支持我们QA的工作 让我们的项目更加的健壮 嘻嘻。

2.自动化的使用场景

自动化测试的使用场景(站在用户的角度上去验收项目,路径主要覆盖大部分用户经常使用的功能)洋文的方法就叫:UAT (user acceptance test)用户验收测试

那么问题来了,那么自动化究竟要做什么呢?

快速的回归重要的主干功能(优点 节省人力和时间)但是,这样看构建自动化的框架和角度,有些自动化就事与愿纬。

3.自动化开始前的准备

摸索的过程是痛苦的,从ide-selenium1-selenium2 monkey monkeyrunnner robotium当初整的头的晕了  。不过现在回头看一下也是一种知识的积累,虽然深度不深,但是好歹也拓宽了一定的广度。既然说到这里就简单的介绍一下这几个工具。

ide 是firefox自带的一个录制工具,我感觉功能还是挺强大的。但是还是喜欢手工写,可以用来辅助,用处不大。

selenium1 已过时

selenium2 =selenium1+webDriver  可以驱动firefox chrome ie 三个浏览器。更加的本地化操作,可以根据许多本地的函数库执行更多的操作,可以避免许多ie的坑。现在主流的web ui 自动化的工具,据说还可以测手机 万能的东西。

准备构建自动化之前一定要明白已下几点:

1.自动化的构建不是越复杂越好,而是越简单越好

2.自动化的case不是越多越好,而是越贴近用户的使用习惯越好

3.自动化测试不是为了单个的测试偷懒,而是为了整个团队,自动化的测试可以支持高速的迭代,在迭代的过程中给予开发极大的支持。(当然自己也可以偷懒)

4.自动化的构建一定要主要代码的耦合性,如果重用的代码一定要抽出来单独成一个方法。如果id或者一个其它的方法因为需求的变更改变了,就不需要改千万个id喽。切记哦,不这样做,自动化比手工更累。

5.自动化的构建一定要可以持续的集成,如果不可以持续的集成,那就扯淡了,更不上迭代的步伐。持续集成的环境后续会继续的跟进

6.设置好断言和数据的驱动,没有断言就没有意义,没有数据驱动一些笛卡尔集的东西就没法测试了。

**最重要的一点技术的才是第一生产力,也就是码代码的能力。这点一定要提高,因为程序的基础是语言。


ps:不是靠自动化来进行测试,而是靠自动化去推动整个项目迭代的速度,确保在迭代的过程中能够快速的回归。(如果版本的ui 和 数据变动挺大 人力不够 ,那就大发了,哈哈。还是手工的点点点)

简单的开始,在这些基础上就可以开始学习这么去做了,是不是有一点清楚了?嘻嘻

monkey 

装adb就可以了,adb devices 接入手机,找到package,就可以执行monkey的命令了。monkey产生的是随机流,随机流也可以控制输出的比例和次数,主要是学学会分析crash的log。(ps:后续自己还在跟进)

monkeyrunner 只能针对一款相同的手机搞自动化 呢吗 屏幕会变

robotium 手机自动化 目前只写过m站的自动化,写的思路和selenium一样,基于solo类和by类。页面元素比web的好找,直接chrome xpath 一找一个准。

简单的写了一点自己的听到和学到的东西,可以开始学习了。嘻嘻,买书买资料,自个儿投资去吧!



转载于:https://my.oschina.net/u/2395492/blog/466372

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值