WZ_XJTU_JAVA_SPACE

while(true) {System.out.println("wz.xjtu");}

Selenium – Acceptance Testing Tool

  周末,由于项目需要,作为一个开发者,我决定研究一下自动化测试,因为最近,我们要统计User Story所带来的Defect的个数,所以Dev要在开始的时候就要准备自己在自己的开放环境上多测试几遍。

公司一直在用QTP测试,用VB去写脚本,额的神呀,那语言我玩不转,所以还是选择了Selenium,因为它提供了Java的driver,还是不错的。先装了一个Firefox插件,录制了一些脚本,拷贝到JUnit里面,竟然不可以运行。网上Google了很久没有找到好的方法,一方面是由于我们的这个frame写的不是怎么标准,另外一个方面估计是网络太慢了。所以我加上了一个waitForPageLoad,竟然神奇的可以通过了。不知道为什么,但是这样的脚本的东西,我也懒得去理解为什么。

  一直想怎么把东西做到超级的自动化,自动化达到在一个地方输入,另一个地方就可以验证了,最后决定,把输入数据写到Excel里面,中间的数据存储到数据库中(必须的,其实还是可以在Excel里面存着,不过懒得这样存,访问Excel不是俺的强项)。最后去根据这些中间的结果去验证最后的输出是不是正确。

  想法很好,开始做了,遇到了第一个问题,输出是简单的<tr><td>test</td></tr>, 怎么去验证这个test是不是正确呢? 去网上继续搜索,发现用xpath能解决这个问题,最后用以下的path解决了这个东东,如下(xpath=//div[@id='reponseFormHeader']/div/table/tbody/tr[1]/td[1]) 可以用一个firefox差价xpather去发现这个东东,并且写上去,也解决了给这些没有必要的text写上一个Identifier的问题 (QA一直强调要给这些Text都加上一个ID方便自动化测试)。

  最后选择把中间结果写在MongoDB里面,原因很简单,Schemaless和Map driven的DB,我仅仅需要把Map往里面一扔,后面的就不用管了。简单粗暴,但是又是很实用。 自动化测试不是很难,但是要用心去做,QA也不是很容易,很多东西,资料不多,写起来也很奇怪。

  最后说说敏捷软件开发,什么时候写自动化测试呢? 看网上有人说,QA测试中80%的要手工测试,我比较不同意,我认为80%都可以进行自动化测试。自动化测试是QA可以在很早就可以开始的,Mockup出来后就可以开始了。只要我们把自动化测试当成一回事去做,可以省去很多很多的effort,不失为一种敏捷的快捷之路。

posted on 2010-01-11 00:02 wz.xjtu 阅读(266) 评论(0)  编辑  收藏


只有注册用户登录后才能发表评论。


网站导航:
 

导航

<2010年1月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
31123456

统计

常用链接

留言簿

随笔档案

搜索

最新评论

  • 1. re: Cache之我见
  • 评论内容较长,点击标题查看
  • --awp001
  • 2. re: Cache之我见
  • 评论内容较长,点击标题查看
  • --wz.xjtu
  • 3. re: Cache之我见
  • 在分布式环境里,多个用户共用一个Cache,从Cache中获取对象的时候,如何解决用户之间的争抢问题,锁定吗?
  • --awp001
  • 4. re: Cache之我见
  • 目前我的核心任务是实现一个对象池,减少垃圾收集,楼主能否提供一些建议?
  • --awp001
  • 5. re: Cache之我见
  • 我这几天正在研究在系统内引入缓存,楼主说的一级缓存 二级缓存 是一个很好的想法。
  • --awp001

阅读排行榜

评论排行榜