代码改变世界

基于Selenium的自动化测试框架 - SeLion学习之一(基本介绍)

2015-05-30 22:06  北诚教育  阅读(1652)  评论(0编辑  收藏  举报

SeLion是一个基于Selenium的自动化测试框架,是Selenium下的一款非常优秀的框架结构,但是资料非常少,在国内使用的也就相对较少,本人会用一系列的文章,比较详细的介绍该框架结构,希望能给广大的自动化测试爱好者提供一个实现思路,如果对该本人文章感兴趣或者有什么问题,欢迎留言,我会尽量回答,也欢迎转载该系列文章。该文章是本系列第一节,SeLion的基本介绍,先让大家对SeLion有一个基本的认识。

一:SeLion是什么?SeLion是基于Selenium的一款开源测试框架,是对Selenium的扩展和增强,该框架是ebay旗下paypal公司开发的自动化测试框架,该框架主要对Selenium的增强包括一下几个方面:

  1)自动截图功能,在测试过程中自动截图并写入到log中,对于有滚动条的网页能截取全屏。

  2)自动生成的report功能,Selenium本身没有写log的功能,即使使用testNg/ReportNg的report也不是很理想。

  3)自动等待功能。selenium中提供了多重等待的方式,我们也可以自己去封装,而在SeLion只需要简单的条用一个方法即可以实现。

  4)对常见的web对象进行了统一的封装,例如webtable,我们只需要简单的调用其中的方法即可以实现测试,当然我们也可以自己去实现。

  5)对于数据驱动提供了多中方式,excel/YAML/XML/JSON 我们只需要根据需求简单调用即可,该数据驱动基于testNg。

  6)实现了对pageobject开发模式中的页面元素和定位策略写到YAML配置文件进行分离,并可以根据该文件自动化生成该代码。

  7)增加了Selenium的grid功能,自动注册和释放node,增加长时间运行的稳定性。

  8)SeLion中同时集成了移动测试Android/IOS,这样能统一管理web测试和移动系统的测试

以上是我自己总结的,认为SeLion中比较实用的一些功能,后面的文章中,我会针对每一个方面进行详细的讲解。

二;SeLion的测试结构图。

  SeLion框架实际上是Selenim WebDriver + testNg + Maven + ios-driver/Selendroid/Appium的一个合集,结构图如下:

   

  在该图中集成当前最流行和使用的开源工具,包括代码管理工具git,编译工具Maven,持续集成CI工具Jenkins 再加上现有的Selion框架,上图可以看成是一个持续集成测试的自动化测试平台。如果大家有需求的话,我会详细简介该平台的搭建和应用过程,关于SeLion的基本介绍就到这了,希望大家能对该平台有一个整体的认识和了解,欢迎继续关注后面的文章。