艳 的个人资料爬着梯子看月亮照片日志列表更多 工具 帮助

日志


1月7日

本周是总结周

产品终于发版了,又放了个长假,本周从周一到周五没有安排任务,主要是写总结、重组、开大会;
今天上班,项目组一大堆感冒的,看来人经不起折腾啊,乍一松弛,全成病秧子了;
从今天开始按时下班,突然觉得不适应了,以后时间可以自由分配,是学习的大好机会,考察自制力的时候到了,坚持坚持!
1月5日

学习笔记之-record和class区别

目前delphi2006中,record已经和class 很类似了:
type
  TMyRecord = record
  private
    x : Integer;
  public
    constructor Create(val : Integer);
    procedure Change(arg : integer); overload;
    procedure Change(arg1, arg2 : Integer);overload;
  end;
但是,record和class的区别是:
record 不支持继承
record 包含变体部分(有些像case语句,如下,变体部分必需在记录中其他字段的声明之后);class没有
 type recordTypeName = record
  fieldList1: type1;
  ……
  fieldListn: typen;
  case tag: ordinalType of
  constantList1: (variant1);
  ……
  constantListn: (variantn);
  end;
record 是值类型;class是引用类型(b:class;a:b;a:=new b;new b是a的别名)
record 允许在Win32 和 .Net平台都支持运算符重载;class只在.NET里支持
record 是自动构造的,使用的是默认的无参数构造函数,class必须显式构造;由于record拥有默认的无参数构造函数,所以用户定义的构造函数至少要有一个参数
record 没有析构函数
record 不支持虚方法
record 在Win32里不支持interface的实现,在.NET里可以支持
另,他们都是在定义时不被分配内存,在定义具体实例时分配。
下面是一个record类型的with语句应用:
type
  TdateRec = Record
  Year:Integer;
  Month:(Jan,Feb......Dec);
  Day:1...31;
end;
var record1,record2:TdateRec;
..赋值
with record1 do
 begin
    ...
    with record2 do
    ....
 end;     
也可以用 with record1,record2 do...,但容易产生二义性
       
 

学习笔记之―数据驱动(Data-Driven)&&关键字驱动(Keyword-Driven)

一开始对关键字驱动测试概念比较模糊,查看相关资料后才恍然大悟。

数据驱动技术可以将用户使用工具的关注点放在对测试数据的构建和维护上,而不是直接维护脚本,可以利用同样的过程对不同的数据输入进行测试。关键字驱动技术在QTP火起来之后才被大家开始关注,关键字驱动测试技术是数据驱动测试的一种改进类型,主要关键字包括三类:被操作对象(Item)、操作(Operation)和值(value),用面向对象形式可将其表现为 Item.Operation(Value),将测试逻辑按照这些关键字进行分解,形成数据文件,用关键字的形式将测试逻辑封装在数据文件中,测试工具只要能够解释这些关键字即可对其应用自动化。拿具体步骤解释关键字驱动:

1.建立object

捕获软件GUI object然后存入 object repository,为了便于后期维护,可以修改object的名称。

2.设计测试脚本

Item是哪个objectaction,对这个item进行什么OperationValue是什么?

3.执行

关键字驱动测试表示没有必要真正进行录制、回放,没有必要等软件非常稳定时再开展自动化测试,而且只要测试人员对软件业务足够了解,即可直接介入。

参加了上次testage自动化测试框架专家探讨会后,有一些感想一直没有付诸文档,个人感觉,国内无论大公司小公司自动化测试仍然处于探索阶段。公司自制研发的工具目前适用非常成功,其实利用的也正是关键字驱动技术,前段时间提的一些需求问题测试部目前还未落实到具体的开发人员身上,但是,成功的实践经验已经证明工具很快就会在各个项目组铺开。