![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
测试
1501220038
测试、QA
展开
-
Git傻瓜经验——本地使用
Git是个优秀的版本管理工具。以前也用过一阵cvs,在windows下还要装个wincvs的客户端,时间一久也就忘了。后来听说svn比较兴起了。没用过,唯一有点印象的是送测的安装包里经常带着一些额外无用目录,看着挺不爽的。后来我自己开发点东西,就用上了git。无论是我在本机上使用还是自己创建远程仓库,都完全没感受到网上教程那么复杂,当然是我并没有用到那么深的功能。但既然已经满足我的需要,又何必去记原创 2014-02-10 13:32:25 · 1151 阅读 · 0 评论 -
Fitnesse使用系列三
动态决策表 动态决策表是新出的,去年初的版本里还没有这个。看了一下文档和示例,大意是作为普通决策表的一个辅助手段。是为不容易匹配方法名称而推出的。但如果只有一两个参数,再怎么着也不至于找不到名称。所以我认为动态表主要是为了给那些有大量输入参数的情况设计的。像UserGuide示例中的表格,有6个输入,如果按普通决策表的话至少要写6个setXxx方法。如果更多,代码也就更繁琐了。 动态决策表原创 2014-09-19 23:31:14 · 2204 阅读 · 0 评论 -
Fitnesse使用系列四
查询表、子查询表、有序查询表 表头还是要加上标记,这个没什么说的。构造参数列通常是为了提供查询条件(可省略)。fixture代码里面需要注意的是一定要有个无参数的query方法,返回值是List。这个List有点复杂,是三层List的一个集合,分别对应于表、行、字段。口头表述不很清楚,还是看下面的代码好了。返回的结果和页面上的数据进行比较。查询表适合对关系数据库的查询结果进行验证。原创 2014-09-21 07:43:31 · 2332 阅读 · 0 评论 -
Fitnesse使用系列五
脚本表 如果说前面介绍的几种表格都是单步骤、单方法。Script table就是一系列的多步骤操作了,正如名称所代表的含义。 表头的第一个格加script:前缀,也可以只是一个script,后面紧跟的单元格作为类名。后面跟构造参数。下面的行每行代表一个操作。允许的操作类型有:执行方法、检查结果、显示输出。 执行方法包括方法名称和参数。相当奇葩的设计是方法名称可以和参数交错放入表格中。如我原创 2014-09-23 11:14:57 · 1987 阅读 · 0 评论 -
Fitnesse使用系列六
Table 表 基本上这一节就是文档翻译,不打算写示例了,原因结尾会说。 Table表的意思是你可以写出任意样式的表格来。那么任意样式的表格是如何被fitnesse识别并执行的?以及如何展示执行结果的?一起来看一下。 前面几种表格的基本思路是——要么由表头来确定方法名(决策表);要么固定方法名(动态决策表、查询表);要么结合某些标识符确定方法名(脚本表)。总之给人有迹可循的印象,而T原创 2014-09-25 11:59:59 · 2179 阅读 · 0 评论 -
JMeter快速应用
过去长期用loadrunner做性能测试,但是渐渐觉得有些麻烦了: 1.只能运行在windows环境下,而生产环境几乎清一色的linux。为了在同一网段做性能或压力测试,还需要单独部署一套windows服务器,比较浪费。 2.loadrunner和浏览器版本绑定太严格了,比如loadrunner 11,最高就支持到ie9,有时候系统打补丁自动把浏览器版本升上去了,就无法录制脚本了。 3.版权原创 2015-06-08 16:12:18 · 1155 阅读 · 1 评论 -
网页抓取
上了数据挖掘这门课,想做个小例子。基本思路是根据配置文件打开相应的网址,再根据内容的分类信息自动选择符合的文章进行保存。考虑到效率,采用多线程方式。才完成一个基本框架。包括读取配置文件、打开网址、保存文件;后续还有很多工作,解析网页,分析类别等。感觉最大的工作量是网页分析,和数据挖掘关系不大啊,不知道符不符合要求。代码如下: public static void main(String[] a原创 2015-03-16 17:32:38 · 1216 阅读 · 0 评论 -
补一篇关于JMeter的cookies管理器应用
之前介绍过JMeter测试的日常应用。但对于登录后提交数据等操作说的还不够详细。按照常规教程的说法,为JMeter添加cookies管理器,即可以自动管理cookie,实现用户的状态管理。但经过我的使用,发现有的站点可以,有的站点不行。录制完脚本,发现有的站点在cookies管理器中有内容,而大部分没有。经过比较,发现cookies管理器只能自动记录那些持久cookie,而对于类似sessioni原创 2015-08-04 10:33:03 · 6066 阅读 · 0 评论 -
loadrunner的参数化设置
JMeter具备免安装、轻量化、观察请求与响应非常直观等优势。所以大部分时候用JMeter已经很方便了。但是对于session的支持,就有点弱了。虽然可以通过加cookie管理器和参数化替换,也能实现模拟多登录用户。但捣鼓起来很费劲。需要手工把一堆sessionid放到文本里,然后下次还就过期了。所以这时候用loadrunner录脚本然后参数化还是要省心的多。说明loadrunner的virtua原创 2015-11-23 12:26:47 · 1974 阅读 · 0 评论 -
Fitnesse使用系列二
决策表 Fitnesse中提供了好几种表格样式,前面说了,表格是执行测试的关键。从字面看,表格描述的是测试用例;从执行角度看,表格为后端的代码(fitnesse里称作fixture)提供了包名、类名、方法名和参数(仅以java为例)。 先说测试系统,fitnesse提供了两种测试系统:fit和slim。采用不同的测试系统,表格样式不同,代码也不同。所以首先就要确定用哪种。Fit是默认的,是从F原创 2014-09-18 18:19:49 · 2869 阅读 · 0 评论 -
Fitnesse使用系列八
结束篇: Fitnesse是一个有着非常好的创意的软件。它试图拉近开发者与用户的距离。通过前面的介绍,大家可能也看出来了,其实最终还是要落实到编码(fixture)上。这些编码一般来说要由测试人员来写。那么就引发了我的一些思考: 一、有没有必要对每个需求都制定验收“表格”。如果这样做,就意味着要写非常非常多的fixture。写这些代码需要花费相当的时间,而时间是昂贵的成本。在能取得原创 2014-09-27 14:05:55 · 1983 阅读 · 0 评论 -
VisualStudio 2010 UI完全自动化测试实践
VisualStudio2010新增了UI测试功能。想必很多人都尝试过了。作为录制/回放工具的一种,我想用它在web应用上也尝试一下。虽然知道web上的自动化测试历来是极其麻烦的一种,但考虑到操作系统是ms家的、浏览器是ms家的、自动化工具是ms家的甚至C#语言也是ms家的,说不定兼容性能好一些。经过试用之后,发现录制的脚本可以在IDE环境中执行(在测试管理器里应该也是可以的,不过仍然没有脱离环境原创 2014-02-15 23:26:30 · 2155 阅读 · 0 评论 -
试用watir——由喜忧参半到柳暗花明
我在前面说过基于录制、回放的web测试麻烦多多,经常是带来的好处不如麻烦多。所以另寻他途。经过一番调研,觉得webdriver(也即selenium 2.0)前途较好,准备试用。webdriver支持多种语言,我们的项目是基于java编写的,按说用java能够更好的和项目集成。但考虑到刚开始用,快速上手很有必要,使用环境越轻量级越好。于是采用watir——Web Application Test原创 2014-03-24 17:32:42 · 1514 阅读 · 0 评论 -
利用shell脚本统计代码行数
刚毕业那会儿有一次去一家台湾公司面试,问我写过多少行代码。从没想过这个问题,粗略算了算,随口说道:大概几十万行吧。最近整理资料,看着eclipse左边满满的列表,想起了这个事。倒底总共有多少行代码?——这事如果在windows下要么找工具,要么编程序。又想到linux里的命令统计很方便,于是打算用个命令来完成。可分析来分析去,恐怕一行命令是搞不定的——又涉及递归查找,又涉及指定文件类型,又涉及对文原创 2014-10-17 09:54:07 · 2826 阅读 · 2 评论 -
Web自动化测试之困
标题借用《web之困》这本书名,借机吐槽一下在web自动化测试中遇到的各种不顺畅。看了这本书,大感欣慰,因为终于有专家说出了我多年想说而不好意思说的话——现在的web应用就是建立在一堆胡乱拼凑的技术基础之上的。 从底层协议级就定义不周到渲染技术的五花八门;从古老的html、css、java applet、ActiveX到javascript、flash、sliverlight、html原创 2014-02-17 21:46:34 · 1498 阅读 · 0 评论 -
验证loadrunner对Ajax内容的校验
前一阵和开发的同事一起测试某个系统的性能。此系统是发送Ajax请求到后台,再调用第三方的某项服务。第三方服务的性能由不得我们控制,因此开发人员做了一下改进,超时则直接返回。于是在loadrunner这边,结果就好看的多了。当时我并没在意,后来一琢磨,这岂不是说loadrunner不检查Ajax内容就通过了?为了验证这个论断,做了个简单的示例。 首先是写个前端的html,发送Ajax到后台,再写个原创 2014-12-17 23:09:19 · 1825 阅读 · 3 评论 -
Fitnesse使用系列一
一、简介 按标准说法Fitnesse是一个验收测试框架,先不用理会这些貌似“高大上”的名词。看看它是如何介绍自己的。在手册文档的首页,定义了四种说明:1.是一个软件开发合作工具;2.是一个软件测试工具;3.是一个wiki;4.是一个webserver。 先从最有操作性的特征开始理解:一个webserver,也就是说肯定是以web方式访问的,就当是个网站好了;一个wiki,这就更具体些了。Wik原创 2014-09-16 09:36:23 · 3577 阅读 · 0 评论 -
Fitnesse使用系列七
剩下几种都比较简单,放在一起说了。 Import Table——导入表: 引入包路径,和java语言中的import作用是一致的 Comment Table——注释表: 加上注释标记comment,表示此表不需要执行 Library Table——库表: 表示在当前的fixture中找不到方法时,去Library Table所指定的类中查找并执行 Define Tab原创 2014-09-26 23:45:16 · 2027 阅读 · 0 评论 -
Git傻瓜经验——使用远程仓库
使用远程仓库有两个含义。一种是说使用网上提供的空间。这个到相应网站注册就可以了。比如较知名的有github(https://github.com) 、bitbucket (https://bitbucket.org/)等,不多叙述了。我要说的是另外一种——自己搭建内部用的远程版本库。 网上也有不少资料,什么ssh服务、传密钥云云。看的我没耐心。本着越简单越好的原则,我自己试验了一种超级简原创 2014-02-10 13:33:45 · 955 阅读 · 0 评论