刚开始接触selenium是进公司后,老大给我们培训了一下UI自动化(其实也不叫培训啦,就是让我们知道有这么个东西吧,我这么说,老大看到得打人了,哈哈)。要进行自动化测试,当然就得搭建一个自动化测试框架了,说到框架,好多是不是和我一样,心里嘀咕:我曹,框架是什么东东,那么高大上的名词,我一个纯手工,一个彻底的小白,怎么搞得定吗?然而,当我各种百度、浏览文档、博客后,原来搭建这个框架是多么的easy。

 
框架搭建:
看自己喜欢怎么分层,就是你自己喜欢怎么搞就怎么搞,但最终目的是要达到代码维护很容易。之前看的一份文档有一下几种方式:1.根据page来分层,单个页面元素进行封装;2.数据驱动方式;等
 
  我的分层:页面元素层、数据库层、数据库访问层、场景代码层
 
  框架搭建设计思想:1、分层思想实现代码维护简单;2.架包的导入(使用selenium需要两个架包:selenium-java-2.44.0.jar和selenium-server-standalone-2.48.2.jar。不同浏览器版本对应不同selenium架包版本,我目前尝试的火狐版本与selenium对应版本:火狐33.0->selenium2.44.0;火狐43.0->selenium2.53.0),selenium版本与浏览器版本不对应的话,脚本运行不起来。
  一开始调试脚本是通过JUnit进行调试,之后又用了一下testNG,但总是感觉不方便,于是在想,可不可以实现这种效果:我只需在页面上点击某个链接就实现后台代码的运行?当然,首先想到的是,利用web开发知识,但是感觉那样太麻烦了,还是得开发好多东西。下面fitnesse就登场了。
  接触fitnesse是老大写的自动化接口测试平台,作为小白的我们只能是看着wiki语言发呆,因为一点也搞不懂其中的运行原理,应该叫简单的脚本代码都看不懂,于是,懊恼的我又各种百度,找fitnesse资料,不幸的消息是,资料全都告诉我fitnesse是一个非常适合接口自动化测试的平台,心瞬间凉了。
  然后的然后就是看呀看呀,还是没头脑,之后就扔了,没看了。直到最近老大离职,发了封自动化测试平台管理邮件,又想起了fitnesse,然后就又各种百度fitnesse框架搭建,然后就一个意外,实现了一个链接调用后台代码,跑起来了。
  关于fitnesse其实很简单的,看看源码、原理就可以上手了,不过最好下载个框架看看,要不然其实摸不到头脑。
 
 

Java+selenium+Fitnesse的更多相关文章

  1. java selenium (五) 元素定位大全

    页面元素定位是自动化中最重要的事情, selenium Webdriver 提供了很多种元素定位的方法.  测试人员应该熟练掌握各种定位方法. 使用最简单,最稳定的定位方法. 阅读目录 自动化测试步骤 ...

  2. java+Selenium+TestNg搭建自动化测试架构(1)实现代码和数据的分离

    1.主要介绍介绍Java+Selenium+POM的自动化测试框架的搭建,第一个首先实现代码和账号URL等信息的分离.第二点支持跨浏览器,通过读取配置文件的方式实现. 1)将账号URL等信息添加在pr ...

  3. Electorn(桌面应用)自动化测试之Java+selenium实战例子

    基于electorn的桌面应用,网上相关资料较少.所有记录一下.使用java+selenium+testng对该类型应用的自动化测试方法. 代码样例 package com.contract.web. ...

  4. 【java+selenium】网易云音乐刷累计听歌数

    背景应该是在去年的时候,刷知乎看到一个问题,大概是说怎么刷网易云音乐个人累计听歌数,然后有一个高赞回答,贴了一段js代码,直接在浏览器console执行就可以了.当时试了下,直接一下子刷了有好几万.悲 ...

  5. java+selenium的helloworld

    在学校上测试课程,接触到自动化管理工具,在加上助教工作需要改作业,所以想着学下selenium这一强大的web自动化工具. 1.lenium官网:http://www.seleniumhq.org/  ...

  6. java+selenium自动化实践

    git+java+selenium+testng +maven+idea 1.git之代码维护(下载.分支切换.上传) 下载命令 "git clone git@github.com:Luna ...

  7. java selenium webdriver处理JS操作窗口滚动条

    未经作者允许,禁止转载!!! java selenium webdriver处理JS操作窗口滚动条 java selenium webdriver处理JS操作窗口滚动条 import org.open ...

  8. Java+Selenium 3.x 实现Web自动化 - 1.自动化准备

    (一)自动化准备 说明:本文主要记录了基于公司现有项目(一个电子商务平台),从0开始实现UI自动化的历程.从准备阶段,部分内容直接省略了基础知识,一切以最终做成自动化项目为目标,难免会有晦涩之处.文章 ...

  9. Java+selenium自动化测试基础

    Java+selenium maven配置 maven的配置,但还需要建立maven的本地库,修改apach-maven的setting.xml http://www.cnblogs.com/haoa ...

随机推荐

  1. atitit.手动配置列表文件的选择and 数据的层次结构 attilax总结最佳实践--yaml

    atitit.手动配置列表文件的选择and 数据的层次结构 attilax总结最佳实践--yaml 1. yaml是个好的选择.. 1 2. 数据的层次结构--结构:hash,list,和block  ...

  2. Spring Cloud心跳监测

    Spring Cloud实现心跳监测,在服务注册和停止时,注册中心能得到通知,并更新服务实例列表 Spring Cloud注册中心添加配置: eureka.server.enable-self-pre ...

  3. Debian8.0 搭建leanote

    参考了官方wiki以及中文博客 https://github.com/leanote/leanote/wiki http://leanote.leanote.com/post/Leanote-manu ...

  4. 禁止sethc.exe运行 防止3389的sethc后门

    废话:在土司看到的一篇文章,发私信给那个哥们儿说让不让转载,结果还没回复我就在百度看到相同的文章.他自己也是转载的.这哥们儿ID迟早被ban 文章转载自:http://www.jb51.net/hac ...

  5. [uboot]MLO和uboot-spl.bin, uboot.img和uboot.bin

    前段时间使用TI的am4378芯片,发现系统在SD卡启动的时候,启动文件使用的是MLO和uboot.img:而Norflash和eMMC启动的时候使用的是 uboot-spl.bin和uboot.bi ...

  6. 文件模式设置用户ID/设置组ID/sticky bit_转

    S_ISUID  (04000)  set-user-ID (set process effective user ID on execve(2))S_ISGID  (02000)  set-grou ...

  7. selenium中WebElement.getText()为空解决方法

    当使用getText()获取一个普通的链接文本时: <a href="http://www.baidu.com">baidu</a> 如果得到的文本只为空, ...

  8. I2C和SPI

    I2C(Inter-Integrated Circuit)总线 两线式串行总线,用于连接微控制器及其外围设备.是微电子通信控制领域广泛采用的一种总线标准.它是同步通信的一种特殊形式,具有接口线少,控制 ...

  9. Css三栏布局自适应实现几种方法

    Css三栏布局自适应实现几种方法 自适应实现方法我们可以从三个方法来做,一个是绝对定位 ,自身浮动法 和margin负值法了,下面我们一起来看看这三个例子吧,希望例子能帮助到各位同学. 绝对定位法三栏 ...

  10. php的form中元素name属性相同时的取值问题

    php的form中元素name属性相同时的取值问题:修改元素的名称,在名称后面加上 '[]',然后取值时即可得array()数组. 一.以复选框为例: <html> <head> ...