fitnesse - 框架介绍
fitnesse - 框架介绍
2017-09-29
目录:
1 fitnesse是什么?
2 框架介绍
3 与junit、testng比较,fitnesse教其他框架有什么优势
1 fitnesse是什么?
fitnesse可以看做:
- 一个web server
- 一个wiki
- 一个自动化测试工具
2 框架介绍
在fitnesse框架中,总共包括三个部分,wiki page,test system,fixtures。具体见下图所示:
其中:
- wiki page:是我们的test case以及test suite,是可以持续维护的活文件系统
- test system包括两部分slim,fit,也就是fitnesse的执行引擎,解析wiki page中的testcase,并根据testcase中的调用顺序调用fixture中实现的方法
- fixtures也就是我们写真正的测试代码,被wiki page中写的test case调用的方法。
- SUT(software under test):被测试的系统
图1 fitnesse框架图
说明:
在wiki pages上描述的将是关于业务或者其他逻辑的测试用例,fitnesse将会根据你所选择的test runners(slim或者fit)来解析wiki pages所传送过来的test cases,
- slim作为test runner,将会把网络传输过来的wiki 脚本解析为一系列的指令,然后slim 执行器将会根据这些指令来调用我们所编写的测试代码也就是fixtures,fixtures可以是java 测试代码,c测试代码或者其他语言编写的测试代码,这些测试代码将会根据你所调用的被测对象来执行你的测试用例。
- fit作为Test runner,会将wiki page作为html页面,然后通过解析html页面来调用后台的测试代码来执行测试用例,相对于slim性能上较差,fit是比较老的测试引擎,slim会更加的轻量和高效。
3 与junit、testng比较,fitnesse教其他框架有什么优势
fitnesse最大的优点是完全将业务逻辑(测试用例)和测试代码进行分离:
- 功能测试人员负责在wiki上编写、测试、维护、管理用例(wiki非常直观)
- 测试开发工程师负责编写测试代码
这不但利用测试用例和测试代码的维护和管理,也促进了测试人员和开发人之间的沟通,使整个软件开发和测试变得更加敏捷。
fitnesse - 框架介绍的更多相关文章
- [连载]《C#通讯(串口和网络)框架的设计与实现》-1.通讯框架介绍
[连载]<C#通讯(串口和网络)框架的设计与实现>- 0.前言 目 录 第一章 通讯框架介绍... 2 1.1 通讯的本质... 2 1 ...
- YARN基本框架介绍
YARN基本框架介绍 转载请注明出处:http://www.cnblogs.com/BYRans/ 在之前的博客<YARN与MRv1的对比>中介绍了YARN对Hadoop 1.0的完善.本 ...
- Selenium自动化测试框架介绍
Selenium自动化测试框架介绍 1.测试架构作用 a.可维护性 b.提高编写脚本效率 c.提高脚本的可读性 2.框架的几大要素: Driver管理,脚本,数据,元素对象,LOG,报告,运行机制,失 ...
- UiAutomator自动化测试框架介绍
UiAutomator自动化测试框架介绍 环境搭建 1 必要条件 1.1 JDK 1.2 SDK(API高于15) 1.3 Eclipse 2 ...
- [翻译]Spring框架参考文档(V4.3.3)-第二章Spring框架介绍 2.1 2.2 翻译--2.3待继续
英文链接:http://docs.spring.io/spring-framework/docs/current/spring-framework-reference/html/overview.ht ...
- MJExtension框架介绍
MJExtension框架介绍 标签: MJExtension 2015-05-01 08:22 1120人阅读 评论(0) 收藏 举报 分类: Foundation(14) 版权声明:本文为博主 ...
- 人工智能深度学习Caffe框架介绍,优秀的深度学习架构
人工智能深度学习Caffe框架介绍,优秀的深度学习架构 在深度学习领域,Caffe框架是人们无法绕过的一座山.这不仅是因为它无论在结构.性能上,还是在代码质量上,都称得上一款十分出色的开源框架.更重要 ...
- 挑战EXT——QUI框架介绍与下载
挑战EXT——QUI框架介绍与下载 为庆祝新版QUI问世特写此文: 提起EXTJS的大名,恐怕WEB开发界无人不晓吧.EXTJS框架发展到现在,已经非常成熟和全面了.它的组件库尤其是DataGrid组 ...
- IOS-AssetsLibrary(相册)框架介绍
AssetsLibrary框架介绍: AssetsLibrary框架包含了ALAssetsLibrary,ALAssetsGroup,ALAsset,ALAssetsFilter,ALAssetRep ...
随机推荐
- os模块中关于文件/目录常用的函数使用方法
os模块中关于文件/目录常用的函数使用方法 函数名 使用方法 getcwd() 返回当前工作目录 chdir(path) 改变工作目录 listdir(path='.') 列举指定目录中的文件名('. ...
- 初学Python(第一课)
今天整理一下关于Python初学者的基础知识部分的第一课,因为之前学习过C,所以过于基础的知识就不详细记录了. Python相对于C\C++来说,在语法方面已经很简单了:甚至对于JavaScript也 ...
- 利用js实现placeholder占位符,甩开ie不兼容
正常的写法 <input type="text" placeholder="占位符"> 这种写法ie低版本的支持不友好,为了满足某些测试或者产品的变 ...
- R+OCR︱借助tesseract包实现图片文本提取功能
2016年11月,Jeroen Ooms在CRAN发布了tesseract包,实现了R语言对简单图片的文本提取.分析功能. 利用开源OCR引擎进行图片处理,目前可以识别超过100种语言,R语言可以借助 ...
- JDBC完成的三个基本工作
JDBC完成的三个基本工作 1.与数据库建立连接 2.执行SQL语句 3.获得SQL语句的执行结果
- Error Code: 1630. FUNCTION rand.string does not exist
1.错误描述 13:50:13 call new_procedure Error Code: 1630. FUNCTION rand.string does not exist. Check the ...
- solaris启动过程详解
在Sparc平台下,Solaris系统中有一个类似PC BIOS的芯片程序(EEPROM OpenBoot)负责识别分区.文 件系统和加载内核,在Solaris 2.6之后的版本中,默认的内核文件存放 ...
- freemarker写select组件报错总结(五)
1.错误描述 六月 26, 2014 10:44:49 下午 freemarker.log.JDK14LoggerFactory$JDK14Logger error 严重: Template proc ...
- Linux显示登入系统的帐号名称和总人数
Linux显示登入系统的帐号名称和总人数 youhaidong@youhaidong-ThinkPad-Edge-E545:~$ who -q youhaidong youhaidong # 用户数= ...
- python装饰器理解
1.装饰器的作用 在不修改被装饰对象的源代码以及调用方式的前提下为被装饰对象添加新功能 原则: 1.不修改被装饰对象的源代码2.不修改被装饰对象的调用方式 目标: 为被装饰对象添加新功能 2.装饰器的 ...