摘要: 边界值分析法一.方法简介1.定义:边界值分析法就是对输入或输出的边界值进行测试的一种黑盒测试方法。通常边界值分析法是作为对等价类划分法的补充,这种情况下,其测试用例来自等价类的边界。2.与等价划分的区别 1)边界值分析不是从某等价类中随便挑一个作为代表,而是使这个等价类的每个边界都要作为测试条件。 2)边界值分析不仅考虑输入条件,还要考虑输出空间产生的测试情况。3.边界值分析方法的考虑: 长期的测试工作经验告诉我们,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部。因此针对各种边界情况设计测试用例,可以查出更多的错误。 使用边界值分析方法设计测试用例,首先应确定边界情.阅读全文
posted @ 2012-03-27 18:11 Even.He 阅读(38) 评论(0) 编辑
摘要: 等价类划分方法一.方法简介1.定义 是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例。该方法是一种重要的,常用的黑盒测试用例设计方法。 2.划分等价类: 等价类是指某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中的错误都是等效的,并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试,因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件就可以用少量代表性的测试数据取得较好的测试结果。等价类划分可有两种不同的情况:有效等价类和无效等价类。 1) 有效等价类:是指对于程序..阅读全文
posted @ 2012-03-26 17:09 Even.He 阅读(33) 评论(0) 编辑
摘要: 注意事项与要点基本礼仪 1. 守时 - 在任何情况下都要遵守时间,并尽量提前15分钟到达; 2. 着装 - 正式西服,或者半正式的西裤加衬衫(一般情况不需要太正式); 3. 说你好和再见,很高兴认识你; 携带 1. 个人证件 – 以备特殊的需要; 2. 笔记本和笔 – 可以在面试的时候做适当的记录; 3. 雇主公司紧急联系人或猎头公司联系人电话; 态度 1. 积极应对 - 没有任何雇主会不喜欢积极向上的态度,而任何心不在焉的言语和举止都可能带来完全负面的结果; 2. 善于倾听,认真思考 - 对于面试过程中的互动,往往都不需要做出最快速的反应,而是需要在稍微思考后...阅读全文
posted @ 2012-03-20 10:12 Even.He 阅读(26) 评论(0) 编辑
摘要: 在Cucumber项目中,当我们执行cucumber命令时,会首先执行features/support目录下的几个支持文件:env,hooks,world和transforms。Cucumber的这些系统文件的执行顺序如下图所示: 1. env.rb:通常用于准备环境变量; 2. transforms.rb:用于转换feature描述中需要正则匹配的字符串,通过调用Cucumber::RbSupport::RbDsl的Transform方法,完成字符串到自定义类型的转换; 3. hooks.rb:是一个钩子,其中定义了Before、After与at_exit方法,通过提供block执...阅读全文
posted @ 2012-03-16 10:26 Even.He 阅读(50) 评论(0) 编辑
摘要: 树形菜单在平常的开发中是最常见的了,自已也练习练习,先来看两个图: 效果图 表结构实现代码: private void Form1_Load(object sender, EventArgs e) { this.BindTree(0); } private DataSet GetData(int pid) { string strCon = @"Data Source=Agony\SQLSERVER2005;Initial Catalog=sports;Integrated Security=Tru...阅读全文
posted @ 2012-03-15 14:26 Even.He 阅读(21) 评论(0) 编辑
摘要: 网上常用免费WebServices集合天气预报Web服务,数据来源于中国气象局 公用事业 http://www.webxml.com.cn/WebServices/WeatherWebService.asmx 中国股票行情分时走势预览缩略图 http://www.webxml.com.cn/webservices/ChinaStockSmallImageWS.asmx 中国股票行情数据 WEB 服务(支持深圳和上海股市的基金、债券和股票) http://www.webxml.com.cn/WebServices/ChinaStockWebService.asmx 国内飞机航班时刻表 WEB 服阅读全文
posted @ 2012-03-15 14:25 Even.He 阅读(510) 评论(1) 编辑
摘要: 10天背诵表(适用于记忆力好的同学)20天背诵表(适用于记忆力一般的同学)鉴于很多同学反映看不懂这两张记忆表,我做一下解释:1.将需要记忆的所有单词按数量等分成10份(对应10天表)或20份(对应20天表)2.表中的字母A至J依次对应于在一步骤中分成的10份单词集团A份至J份(20天表中字母A至T依次对应于20份单词集团A份至T份)3.表中的数字表示天数,其中10天表中的前10天是记忆单词阶段,后30天是巩固强化阶段(20天表前20天是记忆单词阶段,后30天是巩固强化阶段)4.表中“上”表示这一天中的上午,“晚”表示这一天中的晚上(一)总论词汇是写作的基石,要想取得写作高分,必须突破词汇。科学阅读全文
posted @ 2012-03-12 15:41 Even.He 阅读(25) 评论(0) 编辑
摘要: 如何复制百度文库中的文章。。。这个必须留一份。。。很多人经常会上百度搜索资料,结果发现在百度文库那边可以找到,兴奋了半天却发现下载时要币的,或者登陆上去麻烦。针对这种情况,今天我给大家带来一个破解百度文库下载的方法,其实非常简单,而且不用下载任何软件。好了,废话不多说,直接进入正题。首先,我们按照平常的习惯,找到自己要的:文章不能复制,题目总是可以的吧。我们把题目记住之后, 在搜索引擎的框框里输入:site:wenku.baidu.com +题目【site命令是指在制定的网站里搜索,加号也是要的,如果嫌输入加号麻烦,可以用空格代替。】如搜索android+论文,输入:site:wenku.ba阅读全文
posted @ 2012-03-09 20:46 Even.He 阅读(34) 评论(1) 编辑
摘要: Watir简介"Watir" (发音与 water相近) 全写是 "Web Application Testing in Ruby"。Watir是一款用Ruby脚本语言驱动浏览器的自动化测试工具。Wait是基于Web的自动化测试开发的工具箱。Watir对什么有效?Watir可以驱动那些作为Html页面被发送到Web浏览器端的应用程序。Watir对下列组件不起作用:ActiveX、Java Applets、Macromedia Flash或者其他的应用程序插件。判断Watir是否可用的方法:在页面上点击右键-查看页面源代码,如果可以看到Html源代码,就说阅读全文
posted @ 2012-03-07 10:55 Even.He 阅读(66) 评论(0) 编辑
摘要: a)Multi-line Text 在feature文件中,我们可以嵌入多行文本(multi-line string)作为参数,我们需要用一对三个双引号把我们的文本括起来。《The RSpec Book》一书中的示例如下:feature文件: 1 Scenario: pending implementation 2 Given a file named "example_without_block_spec.rb" with: 3 """ 4 describe "an example" do 5 it "has n阅读全文
posted @ 2012-03-06 18:30 Even.He 阅读(81) 评论(0) 编辑
摘要: ExamplesAll examples are designed to work on the live Watir demo form:http://bit.ly/watir-example.Loading RubyGemsIf you’re a first time Ruby user, you need to understand how to load Ruby gems such as Watir. You can require it via the-rubygemscommand line option or by using theRUBYOPTenvironment var阅读全文
posted @ 2012-03-06 09:51 Even.He 阅读(26) 评论(0) 编辑
摘要: Hooks & BackgroundHooks 在很多情况下,我们需要在每个scenario之前(before)和之后(after)执行某些相同的操作。比如说在测试完成后要关闭浏览器。在Cucumber中,我们可以使用hooks. 在Cucumber中,有三种不同的hooks: Before: 在每个scenario前执行 After: 在每个scenario后执行 AfterStep: 在每个scenario后执行我们可以把这些hooks放在features文件夹下面的任何ruby文件里面,但一般推荐的做法是把它们放在features/support/hooks.rb 文件里,这样让阅读全文
posted @ 2012-03-05 16:29 Even.He 阅读(50) 评论(0) 编辑
摘要: 1.World: World可以看做是Cucumber在运行每个场景之前所要创建的对象的实例,它不仅使得每一个Step Definition可以调用该实例的方法,而且使得为该项目定义的Ruby类是也可以调用该实例的方法。World在Cucumber中被定义为方法,接受可变参数mudules,以及一个proc: 1 def World(*world_modules, &proc)2 2 RbDsl.build_rb_world_factory(world_modules, proc) 3 end下面看一个我自己写的小示例: 目录结构如下:env.rb:该文件通常用于准备环...阅读全文
posted @ 2012-03-05 10:44 Even.He 阅读(64) 评论(0) 编辑
摘要: 1、特性(Feature)文件应该描述特性,而不是应用程序的组成部分 每个特性文件应有一个好的命名,并保持特性的专注2、避免特性与领域逻辑的不一致性 使用Cucumber的一个好处是可以让客户参与其中。为此,在编写你的故事(Story)时,应确保使用客户的领域语言。这一活动的最佳做法是让客户也参与编写故事。3、用组织代码的思想来组织你的特性与场景(Scenary) 组织特性的一种有效办法是按照它们运行的速度。可以使用2-3级的粒度来表示: Fast:场景的运行非常快,例如十分之一秒; Slow:运行速度慢,但还不至于到难以忍受的地步,可能每个场景耗时1秒; Glacia...阅读全文
posted @ 2012-03-01 17:08 Even.He 阅读(30) 评论(0) 编辑
摘要: self上下文 Ruby的self有和Java的this相似之处,但又大不相同。Java的方法都是在实例方法中引用,所以this一般都是指向当前对象的。而Ruby的代码逐行执行,所以在不同的上下文(context)self就有了不同的含义,先来看看常见的context self都代表哪些# 这个位置位于top level context,代表Object的默认对象mainp self # => mainp self.class # => Object@self1 = self# 因为所有自定义类都位于main context之中,所以这是Object的实例方法# 同时也可以说是一个阅读全文
posted @ 2012-02-22 18:23 Even.He 阅读(25) 评论(0) 编辑
摘要: 学习Ruby也有段时间了,在学习的同时也做了些笔记并发到了园子睐。看到园子里的大虾们在出了一系列文章后都会做个索引贴,这样很方便,所以本人今天抽了个空就把它整理了下,方便自己的同时也方便感兴趣的朋友。Ruby学习笔记目录: 1、Ruby入门 2、Ruby-循环与选择结构 3、Ruby-String 4、Ruby-Array 5、Ruby-Hash 6、Ruby-Block, Proc and Lambda 7、Ruby-正则表达式 8、Ruby-Symbol 9、Ruby-Method,Class 10、Ruby-Module阅读全文
posted @ 2012-02-22 15:55 Even.He 阅读(35) 评论(0) 编辑
摘要: 一、Ruby Introduction: Ruby is "an interpreted scripting language for quick and easy object-oriented programming"。 1. Interpreted scripting languageability to make operating system calls directlypowerful string operations and regular expressionsimmediate feedback during development 2. Quick 阅读全文
posted @ 2012-02-20 13:56 Even.He 阅读(45) 评论(0) 编辑
摘要: 最近正在对公司内部进行Ruby+Cucumber的培训(主要是测试人员),我们的目标是让整个项目的人都掌握如何使用Ruby+Cucumber编写TestCase. 并没有很深入的去研究Ruby的知识,只是为满足写Case的要求。大概分为6课,课程结束后,相信大家都可以自己动起手来写case了。这里就分享下我们培训的PPT,至于详细知识有需要的朋友可以看看我的其它关于Ruby和Cucumber的文章吧。课程安排与PPT下载: 1. Ruby&Cucumber Introduction 2. Basic knowledge of Ruby 3. Conditional Statement.阅读全文
posted @ 2012-02-17 18:37 Even.He 阅读(150) 评论(0) 编辑
摘要: 在 Watir 的 Wiki 上无意中看到的,激动的热泪盈眶啊,实在是佩服的五体投地,感谢这些热心的同行们整理了这些宝贵的资料啊。同志们,我们都要向国外的“雷锋”学习啊!另外,也建议大家从中学习一下文档整理和编写的技巧。The HTML Elements that are currently supported include:button<input> tags with type=button, submit, image or resetradio<input> tags with the type=radio; known as radio buttonsche阅读全文
posted @ 2012-02-17 14:12 Even.He 阅读(58) 评论(0) 编辑
摘要: Module: 模块的定义和类比较相似,使用module关键字。但模块不能被实例化,也不能被子类化,模块是独立的,且一个模块对像是Module类的一个实例。模块最常用的两个用途是作为命空间和混入(mixin)。在模块中,可以定义实例变量、实例方法、类变量、类方法和属性等,并且在模块中还可能以定义类和模块。在类中也可以定义模块。在访问模块中的实例成员,需要在类中饱含模块,然后实例化类以访问模块的实例成员。 module FirstModule def go puts "Go home" end def self.show #or FirstModule.show puts &阅读全文
posted @ 2012-01-20 11:19 Even.He 阅读(268) 评论(0) 编辑