自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 资源 (3)
  • 收藏
  • 关注

原创 http接口自动化测试框架实现

一、测试需求描述对服务后台一系列的http接口功能测试。输入:根据接口描述构造不同的参数输入值输出:XML文件eg:http://www.***.com/shoes_product/test/nike_list.jsp?listid=1二、实现方法1、选用Python脚本来驱动测试2、采用Excel表格管理测试数据,包括用例的管理、测试数据录入、测试结果显示等等

2016-02-09 22:08:08 830

原创 Scrum团队中的自动化测试

实施Scrum开发过程充满着挑战—尤其对于从零开始做产品的团队来说。在每个增量冲刺中,你不仅要新增功能,还要确保已实现的功能依然可用。这时,拥有一个可覆盖系统测试和集成测试的自动化框架,可为团队增添不少火力。它不仅能为回归测试增添一层保障,还能释放出珍贵的开发和测试人员时间,让他们花更多的精力在擅长的领域。从小做起生成自动化测试的过程类似于生产被测软件。这涉及到大量的设计,编码和测

2016-02-09 21:55:30 990

原创 基于Lua脚本的自动化测试框架设计

一、自动化测试背景1. 被测对象为嵌入式系统中使用Lua脚本做胶合的一个个模块接口。需要编写Lua脚本调用这些接口对接口进行测试,运行环境为嵌入式系统中并非PC机。2. 测试脚本能够起到回归测试及自动判断测试结果和输出测试报告二、实现方法主要参考XUnit框架机制实现测试套的封装,其封装的对象如下:1. 测试环境2. 自动化判断3. 测试日志4. 测试执行情

2016-02-09 21:49:54 5071

原创 自动化测试(一)What is Test Automation?

本文翻译于James Bach的文章《What is Test Automation?》。测试自动化就是任何利用工具来辅助的测试,几乎在计算机工业产生的第一天,这种测试就出现了。而且历史上从来没有出现过“测试自动化取代测试工程师工作”这种事情发生,除非你完全忽略测试人员们的真正工作。基于同样的原因,自动空间探测器从来都不是用来“取代太空科学家的工作”,他们只是拓展了科学家的探索范围

2016-02-09 21:42:20 896

原创 自动化测试架构设计

第1章 前言  目前市场上已经有了不少自动测试工具,不过满足自己需求的测试工具却很难找到或者是难以支付其昂贵的费用,对于在Linux/Unix后台运行的软件产品,自己开发一个自动测试工具,不但可以满足软件的测试需求,还可以节省一大笔费用。  这个自动测试系统架构的设计,是基于Linux/Unix后台运行的软件产品,架构的思想,源于主流测试工具与前辈的实践经验。  软件的自动测试

2016-02-09 21:25:08 830

原创 自动化测试的前提及过程

    自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。通常,在设计了测试用例并通过评审之后,由测试人员根据测试用例中描述的规程一步步执行测试,得到实际结果与期望结果的比较。在此过程中,为了节省人力、时间或硬件资源,提高测试效率,便引入了自动化测试的概念。1、 自动化测试的前提条件  实施自动化测试之前需要对软件开发过程进行分析,以观察其是否适合使用自动化测试。通常需要

2016-02-09 20:44:34 991

原创 单元测试(四)单元测试之桩(stub)和模拟(mock)

在做单元测试的时候,我们会发现我们要测试的方法会引用很多外部依赖的对象,比如:(发送邮件,网络通讯,记录Log, 文件系统 之类的)。 而我们没法控制这些外部依赖的对象。 为了解决这个问题,我们需要用到Stub和Mock来模拟这些外部依赖的对象,从而控制它们  实例  Analyze类会检查filename的长度,如果小于8,我们就会使用一个实现IWebService的类来记录错误

2016-02-09 18:51:02 5207

原创 单元测试(三)单元测试与JUNIT

1.简介  1.1. 为什么要进行单元测试  一个特定的开发组织或软件应用系统的测试水平取决于对那些未发现的Bug的潜在后果的重视程度。这种后果一方面常常会被软件的开发人员所忽视,而另一方面却有可能损害组织的信誉,并且会导致对未来的市场产生负面的影响。相反地,一个可靠的软件系统的良好的声誉将有助于一个开发组织获取未来的市场。  很多研究成果表明,无论什么时候作出修改都要进行完整

2016-02-09 18:25:12 1032

原创 单元测试(二)如何进行单元测试

1、概述  单元测试是针对软件设计的最小单位——程序模块,进行正确性检验的测试工作。其目的在于发现每个程序模块内部可能存在的差错。  单元测试也是程序员的一项基本职责,程序员必须对自己所编写的代码保持认真负责的态度,这是也程序员的基本职业素质之一。同时单元测试能力也是程序员的一项基本能力,能力的高低直接影响到程序员的工作效率与软件的质量。  在编码的过程中作单元测试,其花费是最小的,而

2016-02-09 14:56:55 1076

原创 单元测试(一)基本概念

要减少软件中的错误数目,方法之一就是拥有一个专业的测试组,其工作就是尽一切可能使软件崩溃。不幸的是,如果拥有测试组,那么即使是经验丰富的开发人员,也会倾向于花费较少的时间来保证代码的可靠性。  软件界有一句俗语:“开发人员不应该测试他们自己的代码”。这是因为开发人员对自己的代码了如指掌,他们很清楚如何采用适当的方法对代码进行测试。尽管这句俗语很有道理,但却忽略了非常重要的一点 - 如果

2016-02-09 14:25:54 509

原创 功能测试的测试工作流程

1. 测试计划:这个计划,我个人觉得应该在详细设计确定后,代码开始编写的时候进行制定,因为我是“提早开始测试工作”思路的忠实fans,虽然现在项目里都只有我一个人在这么早开始工作。  a) 测试计划,主要是给后面的测试工作一些指南,不能写成领导看的计划,而是要写成由做事的人看的计划  b) 包含的内容可能有:  i. 测试团队人员及分工(要确定当测试时出现缺陷界定、测试环境准备

2016-02-09 14:12:14 521

原创 功能测试(0)-功能测试详解

黑盒测试(Black-box Testing,又称为功能测试或数据驱动测试)是把测试对象看作一个黑盒子。利用黑盒测试法进行动态测试时,需要测试软件产品的功能,不需测试软件产品的内部结构和处理过程。采用黑盒技术设计测试用例的方法有:等价类划分、边界值分析、错误推测、因果图和综合策略。黑盒测试注重于测试软件的功能性需求,也即黑盒测试使软件工程师派生出执行程序所有功能需求的输入条件。黑盒

2016-02-09 14:08:44 643

原创 敏捷测试(三)从一个实例详解敏捷测试的最佳实践

敏捷软件开发是目前十分流行,并在业界逐步推广的软件开发模式。不同与传统的软件开发模式,敏捷开发模式有着自己鲜明的价值和方法。其中,敏捷测试部分也同以往的软件测试流程有所不同。这对测试人员提出了新的要求,带来了新的挑战。本文将结合一个软件项目实例,基于项目开发的不同阶段,详细介绍每个阶段的主要测试活动。文中将分析每个主要测试活动的前提条件和目标任务,并根据实例推荐最佳的解决方案。第一部分

2016-02-08 22:28:59 795

原创 敏捷测试(二)敏捷测试的方法与实践

什么是敏捷测试呢?敏捷测试当然不能简单地理解测得更快,绝对不是比以前用更少时间进行测试,也不是将测试的范围缩小了或将质量降低来减少测试任务。1、什么是敏捷测试      假如将过去传统的测试流程和方法硬塞入敏捷开发流程中,测试工作可能会事倍功半,测试人员可能会天天加班,而不能发挥应用的作用。敏捷测试应该是适应敏捷方法而采用的新的测试流程、方法和实践,对传统的测试流程有所剪裁,有所不

2016-02-08 21:50:58 705

原创 敏捷测试(一)敏捷测试探索

敏捷测试,简单地说,“敏捷测试就是持续地对软件质量问题进行及时地反馈”。敏捷测试到底是与传统测试方式有哪些不同?首先,可以明确的是,敏捷测试既不是一种方法(如黑盒方法、白盒方法等),也不是一种方式(如探索式测试)。因为在敏捷测试中可以采用已有的各种方法,包括白盒方法、黑盒方法;在敏捷中也可以采用探索式测试,也可以采用基于脚本的测试。那敏捷测试是什么?敏捷测试应该是一套解决方案、一类测试

2016-02-08 21:10:49 671

原创 功能测试(二)软件的易用性

在功能测试的过程中,软件的易学易用性,各个功能是否易于完成,软件界面是否友好等方面作为考核软件质量的重要指标。对于易用性测试可遵循以下原则:1.完成相同或相近功能的按钮用Frame.框起来,常用按钮要支持快捷方式。2.完成同一功能或任务的元素放在集中位置,减少鼠标移动的距离。3.按功能将界面划分局域块,用Frame.框起来,并要有功能说明或标题。4.界面要支持键盘自动浏

2016-02-08 20:31:07 920

原创 功能测试(一)设计测试用例

概念和定义不完全、不彻底是软件测试的致命缺陷,任何程序只能进行少量而有限的测试。测试用例在此情况下产生,同时它也是软件测试系统化、工程化的产物。什么是测试用例?为达到最佳的测试效果或高效的揭露隐藏的错误而精心设计的少量测试数据,称之为测试用例。怎样的用例算是好用例?一个好的测试用例是在于它能发现至今未发现的错误。使用测试用例的好处在开始实施测试之前设计好测试用例

2016-02-08 20:10:19 1273

原创 软件测试的诠释03

“从项目启动的第一天起到需求和设计的评审阶段,从后期的缺陷修正到产品维护——在整个软件生命周期中,开发人员和测试人员愉快地合作、共同努力,将软件产品的开发效率和质量推到一个新的高度。” 这是软件测试应履行的职责。软件测试的诠释:1、认可测试的价值,但更鼓励事先确定验证的标准并以此来驱动开发软件测试究竟在整个项目过程中发挥什么价值?       对产品质量完成全面的评估,为软件产

2016-02-08 18:51:16 532

原创 七种测试驱动模式02

什么是驱动测试工作?总结大概有7中模式如下:1、业务/需求驱动测试比较容易理解,一个软件总是要解决用户的某类业务问题。业务驱动测试就是从用户的实际业务需求出发,分析业务目标、业务流程、用户角色、业务规则、业务数据、业务发展等测试对象,针对这些对象确定测试范围、测试方法和策略。测试是否充分,也是从业务流程和数据来衡量。软件系统能否充分满足业务需求,是业务/需求驱动测试最关切的问题,基

2016-02-08 17:48:28 458

原创 聊聊软件测试04

一、软件测试的定义软件测试的定义有很多种,个人推荐定义为:“使用人工或者自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别”,由于现在软件发展的十分迅速,软件的复杂度也越来越高,所以软件测试现在也变的原来越重要,软件测试贯穿于整个软件生命周期,软件测试并不局限于程序测试,它还包括对相关的需求、文档的测试,也包括一些多样化的回归测试、

2016-02-08 12:39:23 396

原创 软件质量管理01

质量入门介绍根据国际标准组织(ISO)的定义,质量是依靠特定的或暗指的能力满足特定需要的产品或服务的全部功能和特征。这个定义说明了质量是产品的内在特征,描绘了产品的质量观点。质量观点开发人员的质量观点,这直接影响到选择最终产品生产的方法,这不仅起源于开发者的质量观点(产品相对于使用),也起源于如何获得需求(主管相对于客观),和他们如何创造他们工作的环境(协调相对于冲突)。R.T

2016-02-07 23:36:35 438

原创 优雅程序员的成长历程

精彩的职业生涯应该是这样。他们有一些时期缓慢的成长,然后从某些时刻开始快速成长。      为什么有不同的颜色?这些代表工作角色的转变:从软件开发到项目管理,销售到联合创始人或者此类。      中间也会有一些倒退挫折。因为要有所作为就要冒一些风险。冒风险就意味着有时也会遭遇失败。编程:1:写代码,写很多代码在学校里会学到很多理论知识,但是在实际的使用练

2016-02-07 23:15:23 689

原创 常用 Git 命令清单

一般来说,日常使用只要记住下图6个命令,就可以了。但是熟练使用,恐怕要记住60~100个命令。下面是我整理的常用 Git 命令清单。几个专用名词的译名如下:•Workspace:工作区•Index / Stage:暂存区•Repository:仓库区(或本地仓库)•Remote:远程仓库一、新建代码库# 在当前目录新建一个Git代码库$ git init#

2016-02-07 18:28:28 198

转载 Git 10 周年访谈:Linus 讲述背后故事

你为什么要开发 Git?Torvalds:我从来没有想过去做版本控制软件,因为在我看来那是计算机世界里最无聊的事了(如果数据库除外的话 ;^),我天生就不喜欢 SCM。但是 Bitkeeper 的诞生改变了我对版本控制的认识。BK 在大多数方面是正确的,在本地保存一个仓库的副本,分布式合并确实是一大创新。这个分布式版本控制的创新完美地解决了 SCM 的通病:“谁可以修改代码”的难题。B

2016-02-07 18:12:04 312

原创 Git全过程(三)

五、Git分支在代码版本控制工具中,都会有branch的概念。刚开始建立版本仓库的时候,我们只有一个主分支(master branch),我们不可能把日常的新功能开发、代码优化以及bug修复等概念工作全都放在主分支上,这样会使主分支很难维护。这就是为什么会有branch。分支的创建在Git中,branch的创建很简单,我们可以通过下面的命令创建一个”release-1.0″的b

2016-02-07 17:50:06 366

原创 Git全过程(二)

三、Git对象模型Git对象在Git系统中有四种类型的对象,所有的Git操作都是基于这四种类型的对象。      “blob”:这种对象用来保存文件的内容。      “tree”:可以理解成一个对象关系树,它管理一些”tree”和 “blob”对象。      “commit”:只指向一个”tree”,它用来标记项目某一个特定时间点的状态。它包括一些关于时间点

2016-02-07 15:41:53 460

原创 Git全过程(一)

Git 简介      Git是Linus用C实现的一个分布式版本控制工具,注意这里对分布式的强调。不同于Git,像Perforce、SVN和CVS这类版本控制工具都是集中式的。下面大概介绍下集中式版本控制工具和分布式版本控制工具的区别。集中式        所谓集中式的版本控制,就是在一个系统中只有一个机器是服务端,其他机器全是客户端。        以SVN版本控制

2016-02-07 08:46:07 349

原创 Git in 600 words

原文英文地址:http://maryrosecook.com/blog/post/git-in-six-hundred-wordsGit源码地址:https://github.com/maryrosecook/gitlet设想你现在位于 alpha/ 目录下,这里有一个文本文件 number.txt,里面的内容只有一个词:“first”。现在执行 git init 将这个 alpha

2016-02-07 08:35:08 311

Linux下面使用sqlplus热键冲突

Linux下面使用sqlplus热键冲突 解决方案包中包括:libtermcap-devel-2.0.8-46.1.i386.rpm rlwrap-0.42.tar.gz readline-devel-5.1-1.1.i386.rpm

2015-05-07

TreeMap源码

TreeMap源码是基于数据结构中的红黑树进行设计并开发的。

2015-01-13

线程池的简单实现

服务器程序利用线程技术响应客户请求已经司空见惯,可能您认为这样做效率已经很高,但您有没有想过优化一下使用线程的方法。这里简单的实现线程池技术的JAVA代码。

2015-01-04

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除