发布新日志

  • 有关DataTable的语句

    2009-03-25 18:36:47

    比如:Weblist、WebCheckBox、WebRadioGroup等对象

     

    现在举个例子:使用到的是Weblist()这个对象,该对象中有4个可选的内容,选择不同的内容,就代表买家申请不同类型的退款操作。那么我们只需要在DataTable中填写如下所示:

     其中refund_type为参数,见下面的脚本语句,通过这个参数将DataTable中的数据通过顺序传递给了脚本,进行循环操作

    脚本编写如下写:

    方法一:Browser("申请退换货-订单151577").Page("申请退换货-订单151577").WebList("退款原因").Select DataTable("refund_type", dtGlobalSheet)

    方法二:也可在关键字视图中添加:鼠标点击value列,出现一个小图标,点击图标后,出现一个输入框,选择如下:选中Parameter这个选项后,其中选择DataTable,并且name选择之前DataTable中设置的参数名称,点击确定就OK了,QTP会自动在脚本中写下DataTable("refund_type", dtGlobalSheet)这个语句。DataTable这个方法对于需要做循环的脚本,用处是非常大的,可较少测试人员编写脚本量,并且减少冗余,让脚本看着更加清晰、简单。

  • [论坛] QTP中标准检查点插入的时候focused疑问?

    2008-09-05 12:31:05

    我录制完一个简单的脚本后,在用户登录输入姓名,密码之后的“ok”按钮控件上设置了一个标准检查点,然后运行的时候在fail了。如图,请问为什么focused的属性设置为ture的时候就fail,我删除掉之后就pass了,应该是激活了这个控件吧?[img=C:\Documents and Settings\dora.wang\Desktop][/img]
  • QTP的license

    2008-08-25 15:46:02

    NND,开始要进行QTP自动化测试了,昨天把许久未用的QTP打开,居然无法正常使用了,要我输入license,桌面上发现一个license的记事本,不晓得是loadrunner还是QTP的了,一个是100client的,还有一个是web的,可是都说我嵌入代码错误。。。我的应该是破解的QTP9.2的,怎么无缘无故的冒出这个来,查了一番资料说要把QTPPro.exe的一个应用程序拷贝到bin目录底下。好吧,晚上再试一次。
  • daily report

    2008-03-12 18:26:19

    Daily report

    1. I reviewed the  ComAnalyst  project in the morning.
    2. I got more familiar with the system of  comanalyst.and I made 3 job list in this system..
    3. Compared  the regular report and the quick report I find some differentis between the two method, so  I made process by two ways ,and analyse the changing in the process.

     

    That’all

                                                                                                                Dora 2008/3/12

  • 开始工作了

    2008-03-06 12:52:56

    今天开始正式工作了,突然觉得身上的担子重了。3000多块钱的工资,去掉吃饭公交费用,几乎也不再有多少闲钱了。更不敢想如果以后租房子该怎么办。每当想到这些,便底气不足了。妈妈帮我交了四个月的手机话费。都这么大了,要靠自己的本领去生活了。一直对自己说,面对越来越近的东西不要害怕,一切到来的东西都不一定是最终的结局!Dora,keep u passion in u life whatever!
  • 面试回来

    2008-03-02 17:21:18

    去INFOSYS面试后才感觉正规公司的氛围有多么好,刚进去就没有什么废话,简单的自我介绍后,就开始正规专业测试知识问答,全程英语问答,说得我舌头打结!我说到等价类划分时说equivalence class 当时其中一个人说不是这么说的,我告诉他我看的测试相关书籍有这样的定义,晕,不要这么死板嘛!不知道结果怎么样,等待吧,不给我第二次机会的话,我也没有办法!

  • QTP

    2008-02-25 23:01:51

  • 在QTP中随机取下拉菜单的值

    2008-02-25 22:54:16

    摘要:产生期望的随机数来选取到动态的下拉菜单的值。
    关键字:随机数;GetROProperty
            有网友在论坛上提出问题,在使用QTP中如何随机选取动态的下拉菜单。在此笔者总结了一些测试经验,利用51testing的登录界面(http://bbs.51testing.com/logging.php?action=login)作为测试页面进行讲解。
            首先我们拿登录页面中的  安全提问  这个下拉菜单作为测试对象。
             

            我们可以先录制一段选取下拉菜单的脚本。
            Browser("51Testing软件测试论坛 测试 | 软件测试\").Page("51Testing软件测试论坛 测试 | 软件测试").WebList("questionid").Select "您个人计算机的型号"。
            备注:无

            这边有个技术处理就是使用#加数字来选择我们的下拉菜单。
            Browser("51Testing软件测试论坛 测试 | 软件测试").Page("51Testing软件测试论坛 测试 | 软件测试").WebList("questionid").Select "#2"
            备注:这个方法在论坛上也出现过,比较适合这个例子。

            下面我们要取得下拉菜单中选项的个数。
            Browser("51Testing软件测试论坛 测试 | 软件测试").Page("51Testing软件测试论坛 测试 | 软件测试").WebList("questionid").GetROProperty ("items count")
            备注:这边使用GetROProperty,应该算比较常见的,所以不多做解释。

            接下来是要个随机函数,参考帮助。
    Randomize
    x=RandomNumber (0,2)
            备注:这边是随机生成0-2之间的三个数字中的一个。

            我们可以把随机函数写成function,方便以后使用。
    Function Get_Ran(i)
       Randomize
      Get_Ran=RandomNumber (0,i)
    End Function
            备注:这边需要注意的就是使用了函数返回值

            最后我们把脚本整合起来
    Function Get_Ran(i)
       Randomize
      Get_Ran=RandomNumber (0,i)
    End Function


    Get_Count=Browser("51Testing软件测试论坛 测试 | 软件测试").Page("51Testing软件测试论坛 测试 | 软件测试").WebList("questionid").GetROProperty ("items count")
    Ran_Number=Get_Ran(Get_Count-1)
    Browser("51Testing软件测试论坛 测试 | 软件测试").Page("51Testing软件测试论坛 测试 | 软件测试").WebList("questionid").Select "#"&Ran_NumberBrowser("51Testing软件测试论坛 测试 | 软件测试").Page("51Testing软件测试论坛 测试 | 软件测试").WebList("questionid").GetROProperty ("items count")
    Browser("51Testing软件测试论坛 测试 | 软件测试").Page("51Testing软件测试论坛 测试 | 软件测试").WebList("questionid").GetROProperty ("items count")
            备注:需要注意的就是在下拉菜单选择的时候从#0开始计算的,所以随机数字从0开始,传入的值也需要减去1。

            题外话:这边主要是使用QTP自带的随机数字函数这个方法来实现随机选择下拉菜单的内容,其实这个随机数字可以开展到随机字符串。因为我们经常会有一些输入域的测试,有的就需255个字节,多的就更可怕,使用随机函数能大大减少我们的工作量。而下面这个例子是实现在abc这三个字母中随机取出来拼成字符串。
    Function makestring(inputlength)
    If IsNumeric(inputlength) Then
    For I = 1 To inputlength
    'you may add a random function here
    A = Array("a","b","c")
    Randomize
    x=RandomNumber (0,2)
    B = A(x)
    makestring =makestring +B
    Next
    msgbox ("output the string:"&makestring )
    else
    msgbox ("error format:"&inputlength)
    End If
    End Function
    Call makestring("8")

  • about future

    2008-02-25 22:52:38

    so where is ways? always on the way,when u will be tired out,dear dora? i known u have something do not wanted say! just keep on!and never give it up!

  • 软件测试项目管理基本流程

    2008-02-25 22:46:50

    测试项目管理工具核心组件
    测试需求跟踪列表
    测试需求
    测试计划(案例维护计划,测试执行计划)
    测试设计大纲
    测试案例(测试数据,测试脚本等)
    测试执行包
    测试环境维护纪录
    缺陷报告
    测试报告
    测试总结
    测试项目管理核心组件的介绍
    测试需求管理
    测试计划管理
    测试案例管理
    测试执行管理
    缺陷管理
    测试报告管理
    团队交流管理
     
  • 做好测试工作的基本要求

    2008-02-25 22:18:23

    与开发人员相比,测试人员掌握的知识具有博而不精的特点,艺多不压身是个非常形象的比喻。由于测试中经常需要配置、调试各种测试环境,而且在性能测试中还要对各种系统平台进行分析与调优,因此测试人员需要掌握更多网络、操作系统、数据库等知识。

    在网络方面,测试人员应该掌握基本的网络协议以及网络工作原理,尤其要掌握一些网络环境的配置,这些都是测试工作中经常遇到的知识。

    操作系统和中间件方面,应该掌握基本的使用以及安装、配置等。例如很多应用系统都是基于Unixlinux来运行的,这就要求测试人员掌握基本的操作命令以及相关的工具软件。而WebLogicWebsphere等中间件的安装、配置很多时候也需要掌握一些。

    数据库知识则是更应该掌握技能,现在的应用系统几乎离不开数据库。因此不但要掌握基本的安装、配置,还要掌握SQL。测试人员至少应该掌握MysqlMS SqlserverOracle等常见数据库的使用。

    作为一名测试人员,尽管不能精通所有的知识,但要想做好测试工作,应该尽可能地去学习更多的与测试工作相关的知识。

    2.         行业知识

    行业主要指测试人员所在企业涉及的行业领域,例如很多IT企业从事石油、电信、银行、电子政务、电子商务等行业领域的产品开发。行业知识即业务知识,是测试人员做好测试工作的又一个前提条件,只有深入地了解了产品的业务流程,才可以判断出开发人员实现的产品功能是否正确。

    很多时候,软件运行起来没有异常,但是功能不一定正确。只有掌握了相关的行业知识,才可以判断出用户的业务需求是否得到了实现。

    行业知识与工作经验有一定关系,通过时间即可以完成积累。

    3.         个人素养[1]

    作为一名优秀的测试工程师,首先要对测试工作有兴趣:测试工作很多时候都是显得有些枯燥的,因此热爱测试工作,才更容易做好测试工作。因此,除了具有前面的专业技能和行业知识外,测试人员应该具有一些基本的个人素养,即下面的五心

    专心:主要指测试人员在执行测试任务的时候要专心,不可一心二用。经验表明,高度集中精神不但能够提高效率,还能发现更多的软件缺陷,业绩最棒的往往是团队中做事精力最集中的那些成员。

    细心:主要指执行测试工作时候要细心,认真执行测试,不可以忽略一些细节。某些缺陷如果不细心很难发现,例如一些界面的样式、文字等。

    耐心:很多测试工作有时候显得非常枯燥,需要很大的耐心才可以做好。如果比较浮躁,就不会做到专心细心,这将让很多软件缺陷从你眼前逃过。

    责任心:责任心是做好工作必备的素质之一,测试工程师更应该将其发扬光大。如果测试中没有尽到责任,甚至敷衍了事,这将会把测试工作交给用户来完成,很可能引起非常严重的后果。

    自信心:自信心是现在多数测试工程师都缺少的一项素质,尤其在面对需要编写测试代码等工作的时候,往往认为自己做不到。要想获得更好的职业发展,测试工程师们应该努力学习,建立能解决一切测试问题的信心。

  • 详细介绍对软件系统测试的技巧

    2008-02-25 22:07:21

    注:本系统测试方法只作为功能测试基础,功能测试应在此基础上根据软件系统实际需求进行扩展,不可仅以此作为全部测试内容。

     

    界面测试

    界面风格是否一致,美观

    名称是否统一(如搜索按扭是’Find’,还是’Search’,要求一致)

    不同分辨率下显示是否正确

    字体大小、风格是否统一

    错别字检查

    窗体最大、最小化、改变窗体大小、移动、滚动条拖动显示是否正确

    键盘操作是否正常(Tab切换、回车键响应、功能键、快捷键)

     

    系统功能测试

    录入保存功能测试

    常规录入测试,录入保存后检查数据是否更新

    退出重新进入软件系统检查数据

    边界数据测试(数值录入允许的最大、最小值,日期录入2月、某月、一年的边界值)

    非法数据录入测试(数值录入录入字符、日期录入超出日期范围、字符超出允许长度)

    空值测试(每一录入项为空测试)

    特殊符号测试(’”\!@#$%^&*()_+|[{}:;<>?

    重复数据录入保存检查

     

    删除功能测试

    删除数据后,检查数据是否被删除,是否更新

    退出重新进入软件系统检查数据

    删除全部数据

    无记录时进行删除操作

    删除时选择否操作,检查数据状态

       

    修改功能测试

    修改数据后,检查数据是否被修改,是否更新

    退出重新进入软件系统检查数据

    无记录时进行修改操作

    重复数据检查

     

    退出测试

    正常按扭退出

    关闭窗体退出

    非正常中断退出

    重复进入退出

     

    查询测试

    组合查询数据结果是否正确

     

    打印测试

    打印各种报表,输出是否正确

     

    其它功能(包括所有需求中描述功能……

     

    复合测试

    所有功能进行组合矩阵测试

     

     

    容错性测试

    在各种情况下让系统突然中断,检查数据正确性

     

     

    系统性能测试

    通用指标(指Web应用服务器、数据库服务器必需测试项):

    * ProcessorTime: 指服务器CPU占用率,一般 平均达到70%时,服务就接近饱和;

    * Memory Available Mbyte : 可用内存数,如果测试时发现内存有变化情况也要注意,如果是内存泄露则比较严重;

    * Physicsdisk Time : 物理磁盘读写时间情况;

    Web服务器指标:

    * Avg Rps: 平均每秒钟响应次数=总请求时间 / 秒数;

    * Avg time to last byte per terstion mstes:平均每秒业务角本的迭代次数 ,有人会把这两者混淆;

    * Successful Rounds:成功的请求;

    * Failed Rounds :失败的请求;

    * Successful Hits :成功的点击次数;

    * Failed Hits :失败的点击次数;

    * Hits Per Second :每秒点击次数;

    * Successful Hits Per Second :每秒成功的点击次数;

    * Failed Hits Per Second :每秒失败的点击次数;

    * Attempted Connections :尝试链接数;

    数据库服务器指标:

    * User 0 Connections :用户连接数,也就是数据库的连接数量;

    * Number of deadlocks:数据库死锁;

    * Butter Cache hit :数据库Cache的命中情况

       

    安全性测试

    以黑客身份攻击服务器

    以普通用户身份进行攻击数据库服务器

    缓冲区溢出检测

    代码的安全检查

    数据保密性检查

    数据安全性检查

     

    安装测试

    检查病毒

    在客户指定的不同系统下进行安装测试,检查程序是否可用

    反安装是否可用,数据是否保护

    至少在一台笔记本上进行安装测试

     

    兼容性测试

    操作系统兼容性测试

    异构数据兼容性测试

    新旧数据数据转换

    异种数据兼容性测试

    应用软件兼容性

    硬件兼容性

  • TestDirector8的测试步骤

    2008-01-22 16:24:44

    1、检查应用程序,以确定测试范围包括测试目标,测试策略。

    2、构建Requirements Tree以定义全部的测试需求。

    3、为需求树中的每个需求创建详细的测试需求列表。描述每一个需求,为之分配优先级,必要时添加附件。

    4、生成报告和图表以助于分析测试需求。复审需求以确保该需求适宜测试范围。

    5、检查应用程序、系统环境和测试资源以确定测试目标。

    6、将应用程序划分为模块或功能以备测试。构建Test Plan Tree,将应用程序层次性的划分为测试单元或主题。

    7、为每个模块确定你所需要的测试类型。向Test Plan Tree中的每个测试添加基本定义。

    8、每一个测试连接到相应的一个或多个需求。

    9、在TestPlan Tree中,通过为测试添加测试步骤开发手度。测试步骤描述了每一个测试的测试操作、需要检查的点和预期结果。然后确定哪些测试需要被自动化。

    10、通过使用Mercury Interactive的测试工具或者定制的测试工具、第三方测试工具为你所决定的需要自动化的测试创建测试脚本。

    11、生成报告和图表以助于分析测试计划数据。复审测试以确定该测试适宜测试目标的程度。

    12、定义多个测试集以用于在项目中达到各种各样的测试目标。确定在每个测试集中包括哪些测试 。

    13、确定测试执行的时间并给测试人员分配任务。

    14、在相应的测集中自动或手式执行测试。

    15、查看测试运行的结构以确定是否在应用程序中发现了缺陷。生成报告和图表以且于分析测试运行结果。

    16、报告在应用程序中检测到的缺陷。项目相关人员可以在测试过程中的何意阶段添加缺陷。


    17、复审新缺陷并且确定哪些缺陷应当被修复。


    18、改正那些需要修复的缺陷。

    19、测试新创建的应用程序。继续以上过程直到被修复。


    20、生成报告和图表以助于分析缺陷修复的过程,还可以帮助确定何时发布相应的程序
  • 新年新起点哦

    2008-01-19 00:49:11

    信念很重要哦,新年新起点,呵呵,Dora,该认真和严肃的面对人生和未来了!
Open Toolbar