发布新日志

  • 查询测试分析

    2008-09-27 15:52:05

    一.角色以及入口:

    角色:系统管理员,开发人员

    入口:服务管理

     

    二.页面元素检查:

    对页面初始化的检查,即页面打开后,对页面不做任何操作时的元素检查。(破页;js错;demo对比等)

     

    1、查询条件:

       服务名称:文本输入框,默认为空。

       服务类型:下拉列表选择,默认为"请选择"。

       服务代码:文本输入框,默认为空。

       业务类型:下拉列表选择,默认为"请选择"。

       审核标志:下拉列表选择,默认为"请选择"。

       开始时间:通过控件选择,时间范围。

       结束时间:通过控件选择,时间范围。

    2、查询结果列表:

       搜索结果显示字段为:选择,服务名称,服务类型,服务代码, 审核标志, 是否邮件报警,是否短信报警,开始时间,结束时间,备注。

       默认结果列表无数据。

     

    3. 翻页显示格式

     

    4. 控件名称

       该页面包括如下控件名称:查询,重置,新增,修改,删除,审核,上一页,下一页。

     

    三.页面控件组合的功能矩阵:

    1. 日期控件

      1)开始时间:选择起始时间后,联动显示出结束时间选择,结束时间小于起始时间日期的日不能选择。

      2)结束时间:选择起始时间后,联动显示出结束时间选择,结束时间小于起始时间日期的日不能选择。。

    2. 单条件查询

         1)服务名称支持模糊查询。

         2)分发类型,审核标志默认查询,查询到全部未删除的数据记录。

         3)以开始时间范围进行查询,查询到开始时间为所选择范围内未删除的数据记录,如果只选择起始时间,不选择结束时间,则默认结束时间为当前时间,

         如果只选择结束时间,不选择起始时间,则默认起始时间为系统最早数据的开始时间。

         4)以结束时间范围进行查询,查询到开始时间为所选择范围内的未删除的数据记录,如果只选择起始时间,不选择结束时间,则默认结束时间为当前时间,

         如果只选择结束时间,不选择起始时间,则默认起始时间为系统最早数据的开始时间。

     

    3. 组合条件查询

         1)默认条件查询:查询出全部的未删除的数据记录。

         2)全空条件查询:查询出全部的未删除的数据记录。

         3)全选条件查询:一次只能查询出一条数据记录。

    4. 重置按钮

         1)输入查询条件,点击重置按钮,查询条件返回默认状态。

    5. 新增按钮

         1)点击新增按钮,进入新增服务页面。

    6. 修改按钮

         1)进入服务查询页面,查询到服务数据,不选择任何一条数据,点击"修改"按钮,系统给出相应提示信息。

         2)以非系统管理员身份登陆系统,进入服务查询页面,查询到服务数据,选择一条审核状态为"已审核"的服务,点击"修改"按钮,系统给出不能修改的提示信息。

         3)以系统管理员身份登陆系统,进入服务查询页面,查询到服务数据,选择一条审核状态为"已审核"的服务,点击"修改"按钮,系统给出相应提示,但是可以进入编辑页面。

    7. 删除按钮

         1)进入服务查询页面,查询到服务数据,不选择任何一条数据,点击"删除"按钮,系统给出相应提示信息。

         2)以非系统管理员身份登陆系统,进入服务查询页面,查询到服务数据,选择一条审核状态为"已审核"的服务,点击"删除"按钮,系统给出不能删除的提示信息。

         3)以系统管理员身份登陆系统,进入服务查询页面,查询到服务数据,选择一条审核状态为"已审核"的服务,点击"删除"按钮,系统给出相应提示,如果确定删除,则删除成功。

    8.审核按钮

         进入服务审核页面,查询到服务数据,选择一条服务数据记录,点击[详情]按钮,弹出新窗口显示出该数据详细的信息内容。

         审核页面内容:

         服务基本信息:服务名、服务类型、服务代码、分发业务类型、开始时间、结束时间、是否邮件报警、否短信报警。

         分发步骤信息:步骤序号、分发步骤名、步骤类型、SQL名、SQL详情。

                      若一个步骤有多个固化SQL,则显示多条记录。

                      选中分发步骤中的一条记录,则SQL详情中显示该SQL名对应的SQL信息。

     

    四.查询结果的校验:

    1、查询无结果:右下角有 :not result to display的提示信息,结果显示栏无数据结果。

    2、有结果时检查:

       1)所有结果数据与数据库是否匹配,右下角显示查询结果数据是否和数据库匹配,用sql核对。

       2)结果中每个字段值与数据库某个字段值匹配,且表示形式符合需求。

       3)翻页、排序、链接显示检查。

       4)选择数据,一次只能选择一条数据。

    五.用例划分说明:

    1. 单条件查询

    2. 按钮功能检查

    3. 页面检查

    4. 组合条件查询

    5.  翻页检查

  • 删除功能测试分析

    2008-09-26 12:29:44

    一.角色

    系统管理员,开发人员

     

    二.入口:

    资源分发系统->服务管理

     

    三.测试分析:

     

    1. 删除操作检查

     1)在服务查询页面,查询出服务数据记录,不选择某一服务,点"删除",提示"请选择一个服务"。

    2. 删除限制检查

     1)要删除的分发服务状态为已审核

         A. 以系统管理员登陆,进入服务查询页面,查询到准备好的服务,选择该服务,点"删除",系统给出服务已经被审核通过,可以删除成功。

         B. 以开发人员登陆,进入服务查询页面,查询到准备好的服务,选择该服务,点"删除",系统提示该服务已经被审核通过,无法删除。

     2)要删除的服务没有被审核通过

         A. 以系统管理员登陆,进入服务查询页面,查询到准备好的服务,选择该服务,点"删除",系统给出是否确认删除的提示,可以删除成功。

         B. 以开发人员登陆,进入服务查询页面,查询到准备好的服务,选择该服务,点"删除",系统给出是否确认删除的提示,可以删除成功。

    3. 删除结果检查

     1)删除时,提示确认信息,如果用户确认"是",则删除服务,删除成功后,保留原查询条件,更新原有查询结果列表,

        如果用户确认"否",则返回,不删除。

     2) 删除成功后,按原条件查询不出删除的服务。

     3)删除成功后,可以添加一条和被删除数据服务名称或服务代码一样的服务。

     4) 删除不成功,不能添加一条和被删除数据服务名称或服务代码一样的服务。

    4. 删除影响

     1)删除某个服务后,在分发步骤查询,新增,修改页面"服务名称"下拉列表的数据项中被删除的服务名称不再显示。

  • 修改页面测试分析

    2008-09-25 11:47:54

    一.角色以及入口:

    角色:系统管理员,开发人员

    入口:服务管理--修改服务

     

    二.页面元素检查:

    对页面初始化的检查,即页面打开后,对页面不做任何操作时的元素检查。(破页;js错;demo对比等)

     

    进入到修改服务页面,查看界面元素

      检查点:

        1. 页面标题显示为:修改服务

        2. 页面元素:

                元素名称       元素类型           元素初始值

                1)服务名称    文本框                

                2)分发类型        下拉列表               

                3)分发代码         文本框                

                4)审核标志        单选框              

                5)开始时间         日期                  

                6)结束时间         日期                  

                7)保存按钮         按钮

                8)取消按钮         按钮   

                9)备注            文本框                        

          1)服务名:文本框,显示内容和该数据在查询列表中服务名称一致,有必填标示。

          2)分发类型:下拉选择框,显示内容和该数据在查询列表中分发类型一致,有必填项标示。

          3)分发代码:文本框,显示内容和该数据在查询列表中服务代码一致,有必填项标示。

          4)审核标志:单选按钮,审核,未审核,该数据在查询列表中显示哪个状态则哪个状态被选中,不可编辑,有必填项标示。

          5)开始时间,结束时间:显示内容和该数据在查询列表中一致。

          6)保存按钮:检查录入完整,点击保存按钮,提示保存成功。

          7)取消按钮:关闭当前页面。

          8)备注:显示内容与该数据在查询列表中备注一致。

    三.页面控件检查

    单个控件检查:

    1.服务名

      1)若没有填写,则提示必须填写。

      2)超过20个字,则提示字符超长。

      3)在文本输入框输入特殊字符,!,·#¥%$<>*()@,检查系统对特殊字符有处理。

    2.服务代码

      1)超过32个字符,则提示字符超长。

      2)在文本输入框输入特殊字符,!,·#¥%$<>*()@,检查系统对特殊字符有处理。

    3. 分发业务类型

       数据项为分发业务类型数据表中的信息。

    4. 开始时间,结束时间

       日期控件,结束时间必须大于等于开始时间

    5.备注

      1)超过80个字,则提示字符超长。

      2)在文本输入框输入特殊字符,!,·#¥%$<>*()@,检查系统对特殊字符有处理。

     

    页面控件组合的功能矩阵:

    1、服务类型

      如果选择服务类别为定时服务,显示出短信报警,邮件报警选项,报警方式必须选择一种,默认两种方式都选中"是"。

          

    四.检查数据生成情况:

    1. 修改服务名称,重新输入的服务名称如果已经存在,则提示服务名称重复,修改操作不成功。

    2. 修改服务代码,重新输入的服务代码如果已经存在,则提示服务代码重复,修改操作不成功。

    3. 修改服务保存成功后,在查询服务中,根据修改后的服务代码,能够查询到修改过的服务数据,显示信息为修改后的信息

    4. 修改服务保存成功后,在操作日志中,能够查询到日志信息,日志类型为修改服务。

    5. 修改某个服务,在点击保存按钮之前该服务已审核通过。

       1) 普通用户:给出不能修改的提示信息,修改操作不成功。

       2)系统管理员:给出服务已通过审核的提示信息,如果确定修改,则修改成功。

    6. 数据库检查

    1)操作日志表数据检查

    2)分发策略表数据检查

             

    五.相关业务模块影响点的检查:(可选)

    1. 修改服务后,在分发步骤查询,新增,修改页面"服务名称"下拉列表的数据项中会显示修改后的服务名称。

     

    六.用例划分说明:

    1. 修改限制验证

      1)用户修改权限验证

      2)修改异常

    2. 修改操作

      1)初始化检查

      2)修改字段检查

      3)修改成功

      4)修改失败

     

    七.数据相关表

    服务表

    操作日志表

  • 新增页面测试分析

    2008-09-22 11:00:17

        关于测试分析,可能不同的人有不同的分析方法,在这里只是将自己的分析记录下来,和大家一起探讨

     

    一.角色以及入口:

    角色:系统管理员,开发人员

    入口:服务管理--新增服务

     

    二.页面元素检查:

    对页面初始化的检查,即页面打开后,对页面不做任何操作时的元素检查。(破页;js错;demo对比等)

     

    进入到新增分发步骤页面,查看界面元素

      检查点:

        1. 页面标题显示为:新增分发服务

        2. 页面元素:

                元素名称         元素类型           元素初始值

                1)名称            文本框                

                2)代码            下拉列表             

                3)类型            下拉列表              实时服务 

                4)审核标志        单选按钮              未审核

                5)业务类型        下拉列表               请选择

                6)开始时间         日期控件              

                7)结束时间         日期控件               

                8)备注              文本框                

          1)名称:文本框,默认为空,有必填标示。

          2)名称:文本框,默认为空,有必填标示。

          3)类型:下拉选择框,默认值实时服务,数据项为:实时服务,定时服务,有必填标示。

          4)审核标志:单选按钮,只有一个数据项,未审核,且不能修改,有必填标示。

          5)业务类型:下拉列表,默认值为请选择,数据项为分发业务类型数据表中的信息。

          6)开始时间:日期控件选择,选择起始时间后,联动选择出结束时间。

          7)结束时间:日期控件选择,选择起始时间后,联动选择出结束时间。  

          8)保存按钮:检查录入完整,点击保存按钮,提示保存成功。

          9)取消按钮:关闭当前页面。

          10)备注:文本框,默认为空。

     

    三.页面控件检查

    单个控件检查:

    1.服务名称

      1)若没有填写,则提示必须填写。

      2)超过20个字,则提示字符超长。

      3)在文本输入框输入特殊字符,!,·#¥%$<>*()@,检查系统对特殊字符有处理。

    2.服务代码

      1)超过32个字符,则提示字符超长。

      2)在文本输入框输入特殊字符,!,·#¥%$<>*()@,检查系统对特殊字符有处理。

    3.审核标志

       只有一个数据项,未审核,且不能修改,有必填标示。

    4. 业务类型

       数据项为分发业务类型数据表中的信息。

    5. 开始时间,结束时间

       日期控件,结束时间必须大于等于开始时间

    6.备注

      1)超过80个字,则提示字符超长。

      2)在文本输入框输入特殊字符,!,·#¥%$<>*()@,检查系统对特殊字符有处理。

     

    页面控件组合的功能矩阵:

    1、服务类型

      如果选择服务类别为定时服务,显示出短信报警,邮件报警选项,报警方式必须选择一种,默认两种方式都选中"是"。

        

    四.检查数据生成情况:

    1. 保存时,若分发服务名称或者分发服务代码已经存在,则提示数据信息重复。

    2. 新增服务保存成功后,在服务查询中,能够查询到新增加的服务。

    3. 新增服务保存成功后,在操作日志中,能够查询到日志信息,日志类型为新增服务。

    4. 数据库检查

    1)操作日志表数据检查

    2)分发策略表数据检查

             

    五.相关业务模块影响点的检查:(可选)

    1. 新增服务成功后,进入分发步骤页面,服务下拉列表中会显示新增加的服务名称

     

    六.用例划分说明:

    1. 页面元素检查

    2. 页面元素数据校验

    3. 保存功能验证

    4. 取消功能验证

     

    七.数据相关表

    分发策略表rds_policy

    操作日志表rds_logger


    本文出自小刀的51Testing软件测试博客,转载请注明出处: http://www.51testing.com/?128005
  • 博客入围,收到礼品

    2008-09-19 17:41:37

        51testing组织的博客评选已经落下帷幕,自己的博客在最佳技术博客评选中,获得第四,我知道这个名次肯定是不正确的,因为有很多达人并没有参与评选,或者很多达人们并没有在51testing上建立博客,但是自己还是很开心,比较有了自己的一点点成就,而且也收到了51testing的奖品,一本《互联网单元测试》。

         最近上班很辛苦,一直在忙着写测试用例,而且家中才装的宽带,所以就没有多少时间写博客了,计划等这个项目做完了,把项目中自己写测试用例的一些心得和大家一起分享一下,共同探讨最有效的测试用例编写。

         今天是周末了,希望每个朋友们都周末快乐。马上是国庆了,有出游计划的驴友们的幸福时间就要来了哦。

  • Jmeter应用评估

    2008-08-28 11:30:58

    本文非原创,转载自网络,尊重作者版权

    综述:

    在客户端程序上,与LR相比,jmeter只有一个主程序,脚本设计、场景设计、运行监视、报告结果均在一起完成,没有独立的调试器,所以脚本实际上跟场景是一体的;

    在概念上,jmeter的测试计划可以对应LR的测试场景,而线程组可以对LR的测试脚本,与LR不同的是,jmeter的线程组既可以设置各自的并发用户数,也可以设置各自的运行时间;jmeter使用各种取样器作为请求的发生器,比如我们会经常用到的“HTTP请求”取样器,可以对应到LR的请求函数“web_url”(get)“web_submit_data”(post);使用逻辑控制器来实现“if”“swith”“for each”“while”来实现逻辑语法;定时器可以实现think time;报表中的Throughput对应LR中的TPSKB/sec对应LR中的Throughput,这一点可能容易混淆。

    在结构上,jmeter使用各种元件组成脚本,代码为树形结构(.jmx脚本为xml格式)。

    在功能上,jmeter没有独立的调试器,必须运行来进行脚本的调试;没有目标场景,但从用户手册的说明上来看,应该可以通过元件组合实现目标场景;只有针对响应时间的统计图形展现,没有针对事务数的统计图形展现;资源监视模块只针对tomcat5以上),解析tomcatstatus返回的xml来实现,没有Linux资源监控。

     

    脚本功能:

    利用代理服务器截取协议包方式,脚本形式为xml,解析执行,没有单独的调试器。代理服务器可以生成“HTTP请求”取样器脚本以及定时器。

     

    Jmeter脚本由各种jmeter元件组成。这些元件有:取样器、配置元件、定时器、逻辑控制器、前置处理器、后置处理器、断言、报告。

     

    取样器:生成压力的元件,如产生http请求、ftp请求等

    配置元件:与脚本中的配置有关,如用户变量、cookies设置、http头设置等

    定时器:产生延时(think time

    逻辑控制器:对代码做逻辑控制,如if条件判断、for循环等

    前置处理器:取样器操作前的处理,如用户参数、URL rewrite

    后置处理器:取样器操作后的处理,如提取响应信息(关联数据)等

    断言:即检查点,支持正则

    报告:结果展现,如响应数据、服务器监控数据等

     

    参数化文件:两种读取方式——CSV Data Set Config元件和函数:

    CSV Data Set Config元件提供比较丰富的参数设置:编码方式、分隔符、循环使用、共享模式;这里有一个注意点:Allow quote data”选项选为“true”的时候对全角字符的处理出现乱码。利用设置共享模式可以实现在LR中的“Sequential”和“Unique”,对应选项为:“Sequential”用“Current thread”;“Unique”用“Current thread group”(当前的线程组内)或“All treads”(所有的线程组中)。

    StringFromFile”和“CSVRead”函数也可以实现读取参数化文件,“StringFromFile”的方式类似于“Unique”,而“CSVRead”很特别,是每个线程只读取一行作为参数,无论循环多少次,各个线程依次读取。

     

    其它参数化,函数实现:

    1.              使用线程名作为参数:“threadNum”函数,返回格式为“线程组名称+空格+线程组编号+横线+线程编号”;

    2.              使用机器名作为参数:“machineName”函数;

    3.              使用时间作为参数:“time”函数;

    4.              使用随机数作为参数:“Random”函数

     

    检查点:jmeter提供的断言种类很丰富,支持正则表达式的多种匹配规则。

     

    压力产生的元件是取样器,其中最常用的是“HTTP请求”。利用逻辑控制器元件可以实现条件判断、循环等算法。

    另外jmeter提供了后置处理器元件建立关联,常用的是“正则表达式提取器”元件,提取响应返回的数据产生关联数据,进行后续处理或用于后面的请求。

     

    场景设置:

    没有目标场景

    线程组可理解为LR Controller中的单个脚本,多个线程组就是多个脚本,可以通过禁用/启用操作来控制执行的线程组。

    可以设置逐步增加压力,也可以设置一次性加压。

    设置集合点:通过“Synchronizing Timer”这个定时器,可以设置多少个并发用户集合到一起。

    监控资源:使用“监视器结果”来监控,但目前只支持tomcat5以上);原理:该功能是通过解析tomcat的管理status返回的xml实现的;监控得到的结果是负载、内存、线程。

    可以通过逻辑控制器,以及不同的配置原件来模拟不同的业务场景

      

  • Text输入框测试用例设计

    2008-08-27 16:01:28

     

     

    检查点:

    必填项检查;

    输入空格,检查系统处理情况;

    输入非法字符,检查系统处理情况;

    输入超长字符,检查系统处理情况

     

    测试用例设计

     

    若为必填项,<<TEXT名称> 输入空格,点<<<操作按钮>>>

    如为必填项:提示"不能为空"

    如果为非必填项,可以成功保存操作

     

    若为必填项,<<TEXT名称> 不输入,点<<<操作按钮>>>

    提示不能为空

     

    <<TEXT名称>输入NULL或null字符串,点<<<操作按钮>>>

    可以成功保存操作

     

    <<TEXT名称>输入中间空格的字符串,点<<<操作按钮>>>

    可以成功保存操作

     

    <<TEXT名称> 输入左空格+字符串,点<<<操作按钮>>>

    自动过滤左空格,并成功保存字符串

     

    <<TEXT名称> 输入字符串+右空格,点<<<操作按钮>>>

    自动过滤右空格,并成功保存字符串

     

    <<TEXT名称>输入如:</tr><td>,点<<<操作按钮>>>

    可以成功保存操作

     

    <<TEXT名称>输入特殊字符,!,·#¥%$<>*()@,点<<<操作按钮>>>

    可以成功保存操作

     

    <<TEXT名称>输入字符串超过指定长度<<<个数>>> ,点<<<操作按钮>>>

    能够提示字符串过长相关信息

  • 每页显示条数测试用例设计

    2008-08-27 15:59:33

     

    检查点:

     

    异常输入,查询结果检查;

    正常输入,查询结果检查;

     

    测试用例设计

     

     

     

    每页显示条数为默认值(30),点击[搜索]

    系统显示其它查询条件的默认结果,显示为30条记录

     

    每页显示条数输入为字母abc,其它默认,点击[搜索]

    结果显示为30条记录

     

    每页显示条数输入为汉字,其它默认,点击[搜索]

    结果显示为30条记录

     

    每页显示条数输入为全半角符号,其它默认,点击[搜索]

    结果显示为30条记录

     

    每页显示条数输入为x>100 or x<1,其它默认,点击[搜索]

    结果显示为30条记录

     

    每页显示条数输入为html字符串,其它默认,点击[搜索]

    结果显示为30条记录

     

    每页显示条数输入为100,点击[搜索]

     

    则一页显示100条数据,超过的分页显示

     

    每页显示条数选择为1,点击[搜索]

    则一页显示1条数据,超过的分页显示

  • 组合查询测试用例设计

    2008-08-27 15:58:46

    检查点:

     

    默认值检查;

    异常输入,查询结果检查;

    正常输入,查询结果检查;

     

    测试用例设计

     

    查询条件都输入非法的值,点击立即查询按钮

    系统提示出错.

     

    选择查询条件里的二个条件(合法的值),点击查询

    1、显示查询结果

    2、没有相应数据,请输入重新查询条件!

     

    选择查询条件里的三个条件(合法的值),,点击查询

    1、显示查询结果

    2、没有相应数据,请输入重新查询条件!

     

    选择查询条件里的(合法的值),所有条件,点击查询

    1、显示查询结果

    2、没有相应数据,请输入重新查询条件!

     

    选择查询条件里的空值,点击立即查询按钮

    1、显示查询结果

    2、没有相应数据,请输入重新查询条件!

     

    选择查询条件里的默认值,点击立即查询按钮

    1、显示查询结果

    2、没有相应数据,请输入重新查询条件!

  • 名称查询测试用例设计

    2008-08-27 15:57:56

    检查点:

    默认值检查;

    异常输入,查询结果检查;

    正常输入,查询结果检查;

    测试用例设计

     

     

    名称为默认值(为空),点击[搜索]

    系统显示其它查询条件的默认结果

     

     

    前提:存在一名称:易旅科技

    名称输入为杭州,其它默认,点击[搜索]

    显示右模糊匹配该条件的数据,即显示名称包括:'易旅科技'在内的以杭州开头的记录

     

    前提:存在一名称:易旅科技

    名称输入为易旅科技,其它默认,点击[搜索]

    显示右模糊匹配该条件的数据,即显示名称包括:'易旅科技'在内的以易旅科技开头的记录

     

    前提:存在一名称:易旅科技有限公司

    名称输入为易旅科技,其它默认,点击[搜索]

     

    显示右模糊匹配该条件的数据,即显示名称包括以易旅科技开头的记录

     

    名称输入为字母abc,其它默认,点击[搜索]

     

    没有相应数据,请输入重新查询条件!

     

    名称输入为全半角符号,其它默认,点击[搜索]

    没有相应数据,请输入重新查询条件!

     

    名称输入为数字,其它默认,点击[搜索]

    没有相应数据,请输入重新查询条件!

     

    名称输入为html字符串,其它默认,点击[搜索]

    没有相应数据,请输入重新查询条件!

  • 会员ID查询测试用例设计

    2008-08-27 15:56:27

     

    检查点

    默认值检查;

    异常输入,查询结果检查;

    正常输入,查询结果检查

    测试用例设计

    1

    前提:存在会员ID:abc,abcd,1abc

    会员id输入为字母abc,其它默认,点击[搜索]

    显示完全匹配该条件的数据,即只显示会员ID=abc的记录

    2

    前提:存在会员ID:abcd,不存在会员ID:abc

    会员id输入为字母abc,其它默认,点击[搜索]

     

    显示完全匹配该条件的数据,即提示:没有相应数据,请输入重新查询条件!

    3

    前提:存在会员ID:abc,

    会员id输入为字母abc (后面带空格),

    显示匹配该条件的数据,即显示会员ID=abc的记录

    4

    前提:存在会员ID:abc,

    会员id输入为字母 abc(前面带空格),其它默认,点击[搜索]

     

    显示匹配该条件的数据,即显示会员ID=abc的记录

     

    会员id为默认值(为空),点击[搜索]

     

    系统显示其它查询条件的默认结果

     

    会员id输入为汉字,其它默认,点击[搜索]

     

    没有相应数据,请输入重新查询条件!

     

    会员id输入为全半角符号,其它默认,点击[搜索]

     

    没有相应数据,请输入重新查询条件!

     

    会员id输入为数字,其它默认,点击[搜索]

     

    没有相应数据,请输入重新查询条件!

     

    会员id输入为html字符串,其它默认,点击[搜索]

     

    没有相应数据,请输入重新查询条件!

     

  • 跳页检查测试用例设计

    2008-08-27 15:52:42

    跳页检查

     

    检查点

    在输入框中输入-1显示第一页的信息      

    在输入框中输入汉字显示第一页的信息  

    在输入框中输入0显示第一页的信息

    在输入框中输入7显示第7页的信息

    在输入框中输入10显示最后一页的信息

     

    数据准备:

    准备8页,共160条的数据,

    同分页检查的数据准备。

     

    测试用例设计

    1

    在输入框中输入-1,点击[确认]

    显示第一页的信息

     

    在输入框中输入汉字,标点符合等字符,点击[确认]

     

    显示第一页的信息

     

     

    在输入框中输入0,点击[确认]

    显示第一页的数据

     

     

    在输入框中输入7,点击[确认]

    显示:上一页 4 5 6 7 8 下一页,定位在看第七页

     

    在输入框中输入10(超过总页数),点击[确认]

    显示最后一页.

  • 翻页检查测试用例设计

    2008-08-27 15:47:39

    检查点:

    <1> 查询结果的总记录数,总页数

    <2> 每页显示记录数

    <3> 第 N 页

        输入数字后,点击"Go"按钮,页面记录刷新至对应页的记录。

         点击"上一页"按钮,记录回到前一页,该数字刷新-1显示

         点击"下一页"按钮,记录回到后一页,该数字刷新+1显示

    <4> "上一页"按钮

         当前页处于第一页时,该按钮变灰显示。

    面回到前一页,显示前一页记录。

    <5> "下一页"按钮

         当前页处于末页时,该按钮变灰显示

         当前页处于非末页时,点击该按钮,页面回到后一页,显示后一页记录。

    测试用例设计

     

    1

    总结果,总页数

    查询结果的总记录数,总页数

    select count(id) from 表名 t where 查询条件

    2

    每页显示记录数

    检查,查询后,每页显示记录数是否与需求说明书一致

    查询后,每页显示记录数为 15

    3

    第N页

    输入数字后,点击"Go"按钮点击"上一页"按钮

    点击"下一页"按钮,

    ,页面记录刷新至对应页的记录。

    ,记录回到前一页,该数字刷新-1显示

    记录回到后一页,该数字刷新+1显示

    4

    上一页按钮,

    点击"下一页"按钮,

    当前页处于第一页时,该按钮变灰显示。

    当前页处于>=1页时,点击该按钮,页面回到前一页,显示前一页记录。

    5

    下一页按钮

    点击"下一页"按钮,

    当前页处于末页时,该按钮变灰显示

    当前页处于非末页时,点击该按钮,页面回到后一页,显示后一页记录。

     

  • WEB测试常用功能点测试用例总结1

    2008-08-27 15:34:36

    邮箱输入验证测试用例

     

    1、不输入任何字符               提示Email必须填写,不能为空

    2、输入中文空格 邮箱-中文空格  提示Email必须填写,不能为空

    3、输入英文空格 邮箱-英文空格  提示Email必须填写,不能为空

    4、字符串中没有@和. 邮箱-bill163com  提示请填写正确的"E_mail"地址

    5、字符串中只有@没有. 邮箱-bill@163com  提示请填写正确的"E_mail"地址

    6、字符串中只有.没有@ 邮箱-bill163.com  提示请填写正确的"E_mail"地址

    7、字符串中有特殊字符:邮箱-$bill@163.com  提示请填写正确的"E_mail"地址

    8、@和.都存在时:1)第一个字符串为@  邮箱-@163.com  提示请填写正确的"E_mail"地址           

                     2)@与.之间没有字符串 邮箱-bill@.com  提示请填写正确的"E_mail"地址            

                     3)字符串最后一位是.  邮箱-bill.163@com  提示请填写正确的"E_mail"地址            

                     4)字段串中多于2个@符号 邮箱-bill@163@163.com    提示请填写正确的"E_mail"地址         

                     5)字符串长度超过50位  邮箱-***@163.com  字符串超过50个字符 提示"E_mail"地址不超过规定位数

                     6)字符串中有汉字  邮箱-贝尔@163.com 提示请填写正确的"E_mail"地址

     

    手机号码测试用例

     

    手机输入英文空格  1、手机是必填项时提示"手机不能为空"  2、非必填项保存后内容为空

    手机输入中文空格  1、手机是必填项时提示"手机不能为空"  2、非必填项保存后内容为空

    手机输入特殊字符  提示"手机只能为11位数字"

    手机输入超出11字符  提示"手机只能为11位数字"

    手机输入英文字符   提示"手机只能为11位数字"

    手机输入中文字符   提示"手机只能为11位数字"

     

    邮政编码测试用例

     

    邮编输入英文空格,其他必填项填写合理

    1.   邮编是必填项时提示"邮编不能为空"  2. 非必填项保存后内容为空

    邮编输入中文空格,其他必填项填写合理

    1.   邮编是必填项时提示"邮编不能为空"  2. 非必填项保存后内容为空

    邮编输入特殊字符,其他必填项填写合理    提示"邮编只能为6位数字"

    邮编输入超出6字符,其他必填项填写合理    提示"邮编只能为6位数字"

    邮编输入中/英文内容,其他必填项填写合理  提示"邮编只能为6位数字"

     

    登陆测试用例

     

    需要注意:

    登陆名/密码最短  输入正确的用户名密码登陆后   页面跳转到成功页面,登陆后成功页面检查

    登陆名/密码最长   输入正确的用户名密码登陆后   页面跳转到成功页面,登陆后成功页面检查

     

    条件:

    1、正确的用户名,错误的密码(输入A,AA)

    2、正确的用户名,其他人员正确的密码(输入A,Bs)

    3、错误的用户名,正确的密码(输入B,As)

    4、错误的用户名,错误的密码(输入B,BB)

    5、用户名输入特殊字符:`~!@#$%^&*()_+-=[]\';/.,<>?:"{}|-*/+.

    6、密码输入特殊字符

    7、用户名和密码都输入特殊字符

    预期结果:

    1~4:提示用户名与密码不匹配

    5~7:提示请不要输入特殊字符"。。。。。"

  • linux系统下JDK的安装

    2008-08-22 14:04:14

     

    操作系统版本:centos5.0

     

    要安装的jdk版本:jdk-1_5_0_06-linux-i586.bin

     

     

    在命令行中输入java –version可以看到java的版本,which java 可以看到java的部署路径。

     

    在本机中,我将java部署在/data/app/java/下面

     

    熟人java -version ,如果没有出现jdk版本情况,则需要安装java环境,本机安装的是 jdk-1_5_0_06-linux-i586.bin 是一个自解压文件,因此需要打开的他的执行属性

    chmod +x jdk-1_5_0_06-linux-i586.bin

     

    执行这个文件

    ./jdk-1_5_0_06-linux-i586.bin

     

    他会解压生成一个目录jdk1.5.0_06/

     

    将这个目录移动到/data/app

     

    mv jdk1.5.0_06 /data/app/;

     

    给这个目录做个快捷方式

    ln -s /data/app/jdk1.5.0_06/ /data/app/java;

     

    编辑/etc/profile加入环境变量

    vim /etc/profile,在文件最后加入

    pathmunge= /data/app/java/bin

    JAVA_HOME=/data/app/java/

    CLASSPATH=/data/app/java/lib/dt.jar:/data/app/java/lib/tools.jar

    export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC JAVA_HOME CLASSPATH

    保存退出

     

    使配置生效

    . /etc/profile

     

    再次在命令行中输入java –version可以看到java的版本,which java 可以看到java的部署路径,就表示java安装成功了。

     

    注意:

        如果在安装的过程中,系统中已经存在一个低版本的jdk,一般的,centos5.0默认安装的是jdk1.4.2,可以先利用命令:which java 查看到该jdk的安装路径:/usr/bin/java  然后用命令:rm -rf /usr/bin/java 将该jdk删除,再利用命令vim ~/.bashrcalias中添加新安装jdk的路径:alias java='/data/app/java/bin/java'  添加alias后,执行:. ~/.bashrc  则可以完成安装。

  • 基于实际测试的功能测试点总结

    2008-08-14 12:00:36

        以下总结是基于别人总结的基础上结合自己做测试的一些经验进行了二次总结,欢迎大家一起来总结完善。

        1. 页面链接检查:每一个链接是否都有对应的页面,并且页面之间切换正确。可以使用一些工具,如LinkBotProFile-AIDCSHTML Link ValidaterXenu等工具。LinkBotPro不支持中文,中文字符显示为乱码;HTML Link Validater只能测试以Html或者htm结尾的网页链接;Xenu无需安装,支持aspdojsp等结尾的网页,xenu测试链接包括内部链接和外部链接,在使用的时候应该注意,同时能够生成html格式的测试报告。如果系统用QTP进行自动化测试,也可以使用QTP的页面检查点检查链接。

    2. 相关性检查:

    Ø         功能相关性:删除/增加一项会不会对其他项产生影响,如果产生影响,这些影响是否都正确,常见的情况是,增加某个数据记录以后,如果该数据记录某个字段内容较长,可能会在查询的时候让数据列表变形。

    Ø         数据相关性:下来列表默认值检查,下来列表值检查,如果某个列表的数据项依赖于其他模块中的数据,同样需要检查,比如,某个数据如果被禁用了,可能在引用该数据项的列表中不可见。

      3. 检查按钮的功能是否正确:如新建、编辑、删除、关闭、返回、保存、导入,上一页,下一页,页面跳转,重置等功能是否正确。常见的错误会出现在重置按钮上,表现为功能失效。

      4. 字符串长度检查: 输入超出需求所说明的字符串长度的内容, 看系统是否检查字符串长度。还要检查需求规定的字符串长度是否是正确的,有时候会出现,需求规定的字符串长度太短而无法输入业务数据。

      5. 字符类型检查: 在应该输入指定类型的内容的地方输入其他类型的内容(如在应该输入整型的地方输入其他字符类型),看系统是否检查字符类型。

      6. 标点符号检查: 输入内容包括各种标点符号,特别是空格,各种引号,回车键。看系统处理是否正确。常见的错误是系统对空格的处理,可能添加的时候,将空格当作一个字符,而在查询的时候空格被屏蔽,导致无法查询到添加的内容。

      7.特殊字符检查:输入特殊符号,如@#$%!等,看系统处理是否正确。常见的错误是出现在% ‘ \ 这几个特殊字符

      8. 中文字符处理: 在可以输入中、英文的系统输入中文,看会否出现乱码或出错。

      9. 检查信息的完整性: 在查看信息和更新信息时,查看所填写的信息是不是全部更新,更新信息和添加信息是否一致。要注意检查的时候每个字段都应该检查,有时候,会出现部分字段更新了而个别字段没有更新的情况。

      10. 信息重复: 在一些需要命名,且名字应该唯一的信息输入重复的名字或ID,看系统有没有处理,会否报错,重名包括是否区分大小写,以及在输入内容的前后输入空格,系统是否作出正确处理。

      11. 检查删除功能:在一些可以一次删除多个信息的地方,不选择任何信息,按“delete”,看系统如何处理,会否出错;然后选择一个和多个信息,进行删除,看是否正确处理。如果有多页,翻页选,看系统是否都正确删除,并且要注意,删除的时候是否有提示,让用户能够更正错误,不误删除。

      12. 检查添加和修改是否一致: 检查添加和修改信息的要求是否一致,例如添加要求必填的项,修改也应该必填;添加规定为整型的项,修改也必须为整型.

      13. 检查修改重名:修改时把不能重名的项改为已存在的内容,看会否处理,报错.同时,也要注意,会不会报和自己重名的错.

      14. 重复提交表单:一条已经成功提交的纪录,返回后再提交,看看系统是否做了处理。对于Web系统来说,可以通过浏览器返回键或者系统提供的返回功能。

      15. 检查多次使用返回键的情况: 在有返回键的地方,返回到原来页面,重复多次,看会否出错。

      16. 搜索检查: 有搜索功能的地方输入系统存在和不存在的内容,看搜索结果是否正确.如果可以输入多个搜索条件,可以同时添加合理和不合理的条件,看系统处理是否正确,搜索的时候同样要注意特殊字符,某些系统会在输入特殊字符的时候,将系统中所有的信息都搜索到。

      17. 输入信息位置: 注意在光标停留的地方输入信息时,光标和所输入的信息会否跳到别的地方。

      18. 上传下载文件检查:上传下载文件的功能是否实现,上传文件是否能打开。对上传文件的格式有何规定,系统是否有解释信息,并检查系统是否能够做到。下载文件能否打开或者保存,下载的文件是否有格式要求,如需要特殊工具才可以打开等。上传文件测试同时应该测试,如果将不能上传的文件后缀名修改为可以上传文件的后缀名,看是否能够上传成功,并且,上传文件后,重新修改,看上传的文件是否存在。

      19. 必填项检查:应该填写的项没有填写时系统是否都做了处理,对必填项是否有提示信息,如在必填项前加“*”;对必填项提示返回后,焦点是否会自动定位到必填项。

      20. 快捷键检查:是否支持常用快捷键,如Ctrl+C Ctrl+V Backspace等,对一些不允许输入信息的字段,如选人,选日期对快捷方式是否也做了限制。

      21. 回车键检查: 在输入结束后直接按回车键,看系统处理如何,会否报错。这个地方很有可能会出现错误。

      22.刷新键检查:在Web系统中,使用浏览器的刷新键,看系统处理如何,会否报错。

      23.回退键检查:在Web系统中,使用浏览器的回退键,看系统处理如何,会否报错。对于需要用户验证的系统,在退出登录后,使用回退键,看系统处理如何;多次使用回退键,多次使用前进键,看系统如何处理。

      24.直接URL链接检查:在Web系统中,直接输入各功能页面的URL地址,看系统如何处理,对于需要用户验证的系统更为重要。如果系统安全性设计的不好,直接输入各功能页面的URL地址,很有可能会正常打开页面。

      25.空格检查:在输入信息项中,输入一个或连串空格,查看系统如何处理。如对于要求输入整型、符点型变量的项中,输入空格,既不是空值,又不是标准输入。

      26.输入法半角全角检查:在输入信息项中,输入半角或全角的信息,查看系统如何处理。如对于要求输入符点型数据的项中,输入全角的小数点(“。”或“.”,如4.5);输入全角的空格等。

      27.密码检查:一些系统的加密方法采用对字符Ascii码移位的方式,处理密码加密相对较为简单,且安全性较高,对于局域网系统来说,此种方式完全可以起到加密的作用,但同时,会造成一些问题,即大于128Ascii对应的字符在解密时无法解析,尝试使用“uvwxyz”等一些码值较大的字符作为密码,同时,密码尽可能的长,如17位密码等,造成加密后的密码出现无法解析的字符。

      28.用户检查:任何一个系统,都有各类不同的用户,同样具有一个或多个管理员用户,检查各个管理员之间是否可以相互管理,编辑、删除管理员用户。同时,对于一般用户,尝试删除,并重建同名的用户,检查该用户其它信息是否重现。同样,提供注销功能的系统,此用户再次注册时,是否作为一个新的用户。而且还要检查该用户的有效日期,过了有效日期的用户是不能登录系统的。容易出现错误的情况是,可能有用户管理权限的非超级管理员,能够修改超级管理员的权限。

      29.系统数据检查:这是功能测试最重要的,如果系统数据计算不正确,那么功能测试肯定是通不过的。数据检查根据不同的系统,方法不同。对于业务管理平台,数据随业务过程、状态的变化保持正确,不能因为某个过程出现垃圾数据,也不能因为某个过程而丢失数据。

    30.系统可恢复性检查:以各种方式把系统搞瘫,测试系统是否可正常迅速恢复。

    31.确认提示检查:系统中的更新、删除操作,是否提示用户确认更新或删除,操作是否可以回退(即是否可以选择取消操作),提示信息是否准确。事前或事后提示,对于UpdateDelete操作,要求进行事前提示。

      32.数据注入检查:数据注入主要是对数据库的注入,通过输入一些特殊的字符,如“”,“/”,“-”等或字符组合,完成对SQL语句的破坏,造成系统查询、插入、删除操作的SQL因为这些字符而改变原来的意图。如select * from table where id = ‘ ’ and  name = ‘  ,通过在id输入框中输入“12’-”,会造成查询语句把name条件注释掉,而只查询id=12的记录。同样,对于updatedelete的操作,可能会造成误删除数据。当然还有其它一些SQL注入方法,具体可以参考《SQL应用高级SQL注入.doc,很多程序都是基于页面对输入字符进行控制的,可以尝试跳过界面直接向数据库中插入数据,比如用Jmeter,来完成数据注入检查。

      33.刷新检查:web系统中的WebForm控件实时刷新功能,在系统应用中有利有弊,给系统的性能带来较大的影响。测试过程中检测刷新功能对系统或应用造成的影响(白屏),检查控件是否回归默认初始值,检查是否对系统的性能产生较大影响(如每次刷新都连接数据库查询等)。

      34.事务检查:对于事务性操作,断开网络或关闭程序来中断操作,事务是否回滚。

      35.时间日期检查:时间、日期验证是每个系统都必须的,如2006-2-292006-6-31等错误日期,同时,对于管理、财务类系统,每年的1月与前一年的12月(同理,每年的第1季度与前一年的第4季度)。另外,对于日期、时间格式的验证,如20062282006-2-2820060228等。日期检查还要检查日期范围是否符合实际的业务,对于不符合时间业务的日期,系统是否会有提示或者有限制

      36.多浏览器验证:越来越多的各类浏览器的出现,用户访问Web程序不再单单依赖于Microsoft Internet Explorer,而是有了更多的选择:MaxthonFirefoxTencent Traveler等,考虑使用多种浏览器访问系统,验证效果。

      37.安装测试:对于C/S架构的系统,安装程序的测试是一个重要方面,安装程序自动化程度、安装选项和设置(验证各种方案是否都能正常安装)、安装过程中断测试、安装顺序测试(分布式系统)、修复安装及卸载测试。

      38.文档测试:主要是对用户使用手册、产品手册进行测试,校验是否描述正确、完整,是否与当前系统版本对照,是否易理解,是否二义性等。

      39.测试数据检查:事实告诉我们,测试数据比代码更有可能是错的,因此,当测试结果显示有错误发生的时候,怀疑代码错误前要先对测试数据检查一遍。

      40.请让我的机器来运行:在某些项目中,出现一个病态的问题:系统没有问题呀,它在我的机器上是能够通过的。这就说明了其中存在着和环境相关的BUG。“是否所有的一切都受到了版本控制工具的管理?”、“本机的开发环境和服务器的环境是否一样?”、“这里是否存在一个真正的BUG,只不过是在其他的机器里偶然出现?”。所有的测试必须在所有系统要求的机器上运行通过,否则的话,代码就可能存在问题。

      41Ajax技术的应用:Ajax有很多优点,但也有很多缺点,如果利用优点、避免缺点,是我们对新的Web2.0应用的一个挑战。而Ajax的应用最直接的问题就是用户体验,用户体验的效果直接关系到是否使用Ajax技术。“会做,并不意味着应该做、必须做”,这就是对Ajax技术的很重要的注解。

      42Ajax技术的应用:Ajax采用异步调用的机制实现页面的部分刷新功能,异步调用存在异常中断的可能,尝试各种方法异常中断异步的数据调用,查看是否出现问题。在这里遇到的一个问题就是对日期控件的操作,已经如果页面数据较多的时候的刷新。

      43.脚本错误:随着AjaxIFrame等异步调用技术的发展,Javascrīpt技术也越来越受到开发人员的重视,但Javascrīpt存在调试困难、各浏览器存在可能不兼容等问题,因此在Web系统中,可能会出现脚本错误。同时,脚本错误造成的后果可大、可小,不能忽视。

  • QTP对象库

    2008-08-06 17:53:04

     

    今天重新学习QTP,之所以是重新,是因为之前已经使用过QTP,也做过一些自动化测试的尝试,对QTP的使用还算是熟悉,但是,之前使用,都是参照机票预定的那个指南文章,进行操作的,不外乎就是检查的的插入,以及参数化,而今天学习,自己又重新将机票预定的文档认真看了一遍,并且阅读了QTP的用户指南,在阅读的过程中,自己对QTP有了更进一步的理解,尤其是对QTP对象库,觉得今天才真正理解了QTP的对象库,是自己的一个思考的过程,我觉得,阅读这种指南,对所描述的内容的理解是至关重要的。

     

    QTP对执行的操作的某个对象进行标识,首先标识该对象属于哪个测试对象模型,也就是说,该对象是属于哪个对象类型或者类,比如,在录制登录的时候,输入用户名,用户名输入框是属于WebEdit类,而登录按钮,可能是某个image,或者是一个button,当QTP将对象标识为某个类以后,则需要标记该对象的一些可以使得该对象能够和其他对象区分的特征,在QTP中称之为属性,不同的对象的属性,或者属性的值是不同的,而QTPP录制的时候,是将对象的属性,以及属性的值一次存储的,QTPP正是通过不同对象的属性值区分同一类对象的,而在回放的时候,则将当前对象和对象库中的对象进行比较确定是否属于同一个对象,如果应用程序中的对象的一个或者多个属性值与QTPP用来标识该对象的属性值不同,则测试或组件可能会失败。

     

    QTPP在录制的时候会录制对某个对象执行的方法,而在回放的时候,将对运行时对象执行录制的测试对象方法

     

    QTPP中录制的对象或属性,可能会因为应用程序的改变,在回放的时候,该对象的属性或方法会发生改变,可以通过在对象属性对话框或者在对象库对话框中手工修改对象的属性值,在对象库对话框中,可以查看或者修改库中任何测试对象的测试对象描述,或者将新建对象添加到对象库中;或者修改QTPP用来表示对象的一组属性来修改,如果属性值在每个循环中可以可以预见的方式发生变化,可以用参数化,正则表达式,来修改,如果对编程比较熟悉,可以通过SetTOProperty语句来修改对象的属性,要查看QTPP录制的对象的属性或方法,可以通过对象属性或对象库查看,而要查看当前应用程序的属性,可以通过对象侦探器来查看。

  • 测试工程师的面试经历和感想

    2008-08-05 18:01:55

    前一个阶段,因为要换工作,所以面试了一些公司,想一想上次面试还是在一年之前的,一年的时间,整个测试行业有了很大的发展,不要说书店里面关于测试的书籍已经很多很多了,就是在网上的招聘信息,也是动辄就要1年经验,更普遍的事两年测试经验,还好自己有两年的测试经验,只要自己看到合适的,基本上都能接到面试电话,面试了,有感于面试的一些经历,或者说是自己的一些思考吧,就记录在博客中,当作一种记忆。

     

    在找工作之前,更新了一下自己的简历,自从上次找到工作后,简历已经一年没有更新了,于是乎自己还没有开始投简历的时候,就接到了华为在武汉的研发中心的电话,自己还纳闷,为什么华为会邀我去面试呢,因为华为主要是做通信的,而自己擅长的是WEB测试,就自己认为也不合适,但是本着学习面试面试经验,了解大公司面试流程的思想,我还是过去面试了,去那边面试,当然是先参加笔试了,网络上流传的华为的笔试题目很多,但是,我笔试的时候,网络上的题目一个都没有,笔试内容有选择题,有解答题,选择题基本上考察的都是网络相关的一些知识点,当然还有一些测试的概念性的东西,这个倒不难,自己认为答的也不错,简答题就不好是,是编程题,而且是C语言的,上学的时候是学习过C语言,呵呵,现在嘛,都忘的差不多了。笔试完,还是参加了面试,面试的时候,那个面试官还是很客气,问了一些自己做过的项目,要自己详细讲一下自己做的项目,我承认自己讲的不是很好,后来又问到了TCP/ip那一块是否熟悉,有没有相关的经验,自己当然没有了,很诚实的回答了,于是,面试当然就不通过了。

     

    通过华为的这次面试,我认为,就黑盒测试而言,当你在某个行业或者说是某个领有了一定的经验后,如果你要到另外一个你完全陌生的领域,就算是你测试的知识很扎实,要进入也是有一定的困难的,除非是对测试工具掌握的很熟练,很熟练。而且,你转入到陌生的行业,你还是一个新手,需要继续学习新的业务知识,地区,测试人员要有很强的学习能力,要不断的学习,但是,如果测试人员在本行业积累了一定的经验,如果不是很有吸引力,或者万不得已,还是不要转入陌生的行业,至少你可以把学习新业务的时间用来学习测试的工具。

     

    也是在投简历之前,接到了天喻软件的面试电话,在一年前面试过天喻软件,以失败告终,这一次,自己希望可以有所突破,于是稍作准备就过去面试,面试的时候,先也是问了一些项目的相关经验,还有介绍了自己,之后便是机试,在一个电脑上,用QTP实现他们软件的一个自动化测试,因为对他们软件流程的不熟悉,操作失败,自己觉得这样的机试不能体现出真实的情况,因为自动化测试是需要对被测软件很熟悉的情况下才可以的.因为这次的失败,还要用QTP执行另外一个软件的测试,但是那个软件安装十分麻烦,一直弄了2个多小时,到最后也没有安装成功,我不理解那个面试官为什么一定要花费大量的时间来做QTP机试,如果要招自动化测试工程师,就直接招聘自动化测试工程师,而我应聘的并非是自动化测试工程师的。

     

    在天喻的面试,当然也不成功的,面试并没有真正体现出自己擅长的方面,或许是因为自己在简历中有描述实现了公司测试项目的自动化测试,但是我同样也说了是用Jmeter实现的,其实机试在很多面试的时候都会碰到,机试主要体现在在简历中有对测试工具的使用,针对简历中的测试工具的掌握情况,会进行相应的考察,当然了,这主要是在招聘要求中有对测试工具掌握情况的要求,招聘的人员主要做自动化测试。所以说,在投递简历的时候,一定要主要企业在招聘信息中的职位描述,有时候能力要求的描述可能是了解某个工具,但是职位描述中可能会说主要进行自动化测试,这样,仅仅是了解某个工具就不行的,投简历,有时候是越多越好,但是更多的是应该有针对性,这样,面试的机会更多,而且在面试的时候因为切合自己技能,更获得一些知识或经验。

     

    自己真正投了简历面试的是软通动力,面试之前也是有笔试的,笔试是选择题,有四十个题目,包含了白盒测试,黑和测试,性能测试,自动化测试的知识点,但是基本上属于概念性的东西,如果对测试的理论掌握的扎实,回答起来不是很难,笔试完后是面试,面试也是一样的询问项目经验,询问工作经历,在这些过程后,谈到了薪水的问题,因为相差有点大,所以,最后还是没有能够成功。

     

        在软通动力的面试,一切都算顺利,之所以在这里写出来的原因是,在笔试的时候,发现了笔试题目中的一些错别字,本来想在面试的时候给面试官说,但是面试的时候,因为精神集中,结果给忘记了,等出来以后,想起了,打电话给面试官,把自己发现的错别字给他指出,并不是说,可能笔试题目中出现错别字是考察测试人员的细心程度,考察测试人员发现错误后,是否会汇报,就自己而言,发现笔试题目中有错误,总觉得不能忘记,总觉得心里不踏实,可能这是因为做测试的缘故,也算是测试的职业习惯,而且,在出来以后,打电话给面试官的时候,依然记得出现错别字的是那个题目,是哪个字,也许这就是做测试的能力,博闻强记。

     

    期间还接到了两个公司的笔试电话,因为工作没有去参加,真正离职以后,参加来明源软件的笔试,笔试后的第二天我就回老家了,在火车上的时候,接到了他们的面试电话,我就告诉了他们实际情况,计划等我从老家回来再参加面试,但是,就在老家的时候,找到了现在这个工作,于是,就没有参加他们的面试。

     

          以上为自己在换这次工作面试的一些情况,在找工作的时候,一些经历或许会引起一些思考,或者会改变一些看法,不管怎么样,找工作的过程是一个学习的过程,也是一个值得记忆的过程,所以我把它写在博客上,和大家一起分享。

  • QC学习总结

    2008-08-04 18:27:27

        到新公司,测试管理工具是QC,学习了一天的QC,个人认为基本上把QC的大部分功能都熟悉了,学习的时候是参考QC的用户指南的,用户指南写的很详细,学习过了,总结一下,因为之前用到的测试工具都是开源的,测试管理工具是testlink,缺陷管理工具是bugzilla,开源的工具很容易上手,也很简单,当然了,功能相应的也不多,而像QC这种专门的测试管理工具,里面涉及到的功能相对较多,而且,对于测试的一系列的流程,在QC中都有体现,学习起来是需要花费一定的时间,而且,如果仅仅是学习,其实并不能把他所有的功能都融会贯通,只有在实际的使用过程中,用到了,才能真正的掌握了,而如果仅仅是学一下,过几天可能就会又忘了。

        其实,我觉得,学习QC,最重要的是要理解QC组织测试的一个流程,首先是确定并组织测试需求,包括需求树的建立,针对需求树种的每个需求主体,创建详细的测试需求列表,而对于详细的需求列表,则需要添加详细的描述,分配优先级,以及其他的一些内容。

        确定好需求以后,接下来就是测试计划了,QC里面的测试计划其实是包含了测试用例的,确定测试计划可以通过需求直接转换为测试计划,也可以自己手工建立,而测试计划中还区分手工测试和自动测试。测试计划主要是根据应用程序的模块或者函数进行分割,构建测试计划树,然后层次结果划分为若干的测试单元或者测试需求。通过需求转换为测试计划,可以很好的利用需求和测试计划关于层次结构的相似性,但是,需求和测试计划毕竟还是有区别的,所以,还需要手工进行测试计划树的完善,在测试计划树种,每个主题下面都有多个测试,这个测试其实相当于一个测试点,而这个测试下面包括了具体的测试步骤,其实就是一个测试用例的组织。

        测试计划完成后,就是执行测试,在QC中执行测试是在测试实验室模块中的,执行测试,首先是要创建测试集,测试集是共同的一类测试的集合,例如,可以是测试新的某一类功能,或者是测试某一个特定的功能模块,总之,创建了测试集以后,就规定了一组测试,当然,需要向这组规定的测试中添加测试用例,同时也包括了分配测试人员的不同的任务。添加好测试集,分配好测试用例后,就可以执行测试,执行测试分手动测试和自动测试,在执行测试过程中,如果是手动测试,可以更改测试的状态,如果测试失败,可以添加缺陷到缺陷模块中。

        执行测试完毕后,进入缺陷管理模块,在这个模块里面可以新建缺陷,项目组的人可以查看缺陷,并且相关的人可以更改缺陷的状态,跟踪缺陷的状态,在测试计划中,可以将某个测试计划和缺陷进行链接,这也,可以在测试计划中,查看某个测试所关联的缺陷,而且,在缺陷详情中,也可以查看关联的缺陷。

        除了这四个主要部分,QC还提供了强大的分析和图片功能,这些功能,对进行测试报告或者分析测试覆盖是很有好处,也很方便的。

       以上是对学习QC的一个总结,因为学习时间短,而且没有进行实际的使用,总结的很有可能有错误或者遗漏,欢迎大家指出,在这里,只是为了说明,测试的工具学习并不难,主要是使用,测试的新知识,学习到了,勤于总结,对自己学习是一个整理的过程。

  • Web系统的测试方法

    2008-06-30 17:24:52

      一、功能测试

      1、链接测试

      链接是Web应用系统的一个主要特征,它是在页面之间切换和指导用户去一些不知道地址的页面的主要手段。链接测试可分为三个方面。首先,测试所有链接是否按指示的那样确实链接到了该链接的页面;其次,测试所链接的页面是否存在;最后,保证Web应用系统上没有孤立的页面,所谓孤立页面是指没有链接指向该页面,只有知道正确的URL地址才能访问。

      链接测试可以自动进行,现在已经有许多工具可以采用。链接测试必须在集成测试阶段完成,也就是说,在整个Web应用系统的所有页面开发完成之后进行链接测试

      2、表单测试

      当用户给Web应用系统管理员提交信息时,就需要使用表单操作,例如用户注册、登陆、信息提交等。在这种情况下,我们必须测试提交操作的完整性,以校验提交给服务器的信息的正确性。例如:用户填写的出生日期与职业是否恰当,填写的所属省份与所在城市是否匹配等。如果使用了默认值,还要检验默认值的正确性。如果表单只能接受指定的某些值,则也要进行测试。例如:只能接受某些字符,测试时可以跳过这些字符,看系统是否会报错。

      3Cookies测试

      Cookies通常用来存储用户信息和用户在某应用系统的操作,当一个用户使用Cookies访问了某一个应用系统时,Web服务器将发送关于用户的信息,把该信息以Cookies的形式存储在客户端计算机上,这可用来创建动态和自定义页面或者存储登陆等信息。

      如果Web应用系统使用了Cookies,就必须检查Cookies是否能正常工作。测试的内容可包括Cookies是否起作用,是否按预定的时间进行保存,刷新对Cookies有什么影响等。

      4、设计语言测试

      Web设计语言版本的差异可以引起客户端或服务器端严重的问题,例如使用哪种版本的HTML等。当在分布式环境中开发时,开发人员都不在一起,这个问题就显得尤为重要。除了HTML的版本问题外,不同的脚本语言,例如JavaJavascrīpt ActiveXVBscrīptPerl等也要进行验证。

      5、数据库测试

      在Web应用技术中,数据库起着重要的作用,数据库为Web应用系统的管理、运行、查询和实现用户对数据存储的请求等提供空间。在Web应用中,最常用的数据库类型是关系型数据库,可以使用SQL对信息进行处理。

    在使用了数据库的Web应用系统中,一般情况下,可能发生两种错误,分别是数据一致性错误和输出错误。数据一致性错误主要是由于用户提交的表单信息不正确而造成的,而输出错误主要是由于网络速度或程序设计问题等引起的,针对这两种情况,可分别进行测试

      二、性能测试

      1、连接速度测试

      用户连接到Web应用系统的速度根据上网方式的变化而变化,他们或许是电话拨号,或是宽带上网。当下载一个程序时,用户可以等较长的时间,但如果仅仅访问一个页面就不会这样。如果Web系统响应时间太长(例如超过5秒钟),用户就会因没有耐心等待而离开。

      另外,有些页面有超时的限制,如果响应速度太慢,用户可能还没来得及浏览内容,就需要重新登陆了。而且,连接速度太慢,还可能引起数据丢失,使用户得不到真实的页面。

      2、负载测试

      负载测试是为了测量Web系统在某一负载级别上的性能,以保证Web系统在需求范围内能正常工作。负载级别可以是某个时刻同时访问Web系统的用户数量,也可以是在线数据处理的数量。例如:Web应用系统能允许多少个用户同时在线?如果超过了这个数量,会出现什么现象?Web应用系统能否处理大量用户对同一个页面的请求?

      3、压力测试

      负载测试应该安排在Web系统发布以后,在实际的网络环境中进行测试。因为一个企业内部员工,特别是项目组人员总是有限的,而一个Web系统能同时处理的请求数量将远远超出这个限度,所以,只有放在Internet上,接受负载测试,其结果才是正确可信的。

      进行压力测试是指实际破坏一个Web应用系统,测试系统的反映。压力测试测试系统的限制和故障恢复能力,也就是测试Web应用系统会不会崩溃,在什么情况下会崩溃。黑客常常提供错误的数据负载,直到Web应用系统崩溃,接着当系统重新启动时获得存取权。

      压力测试的区域包括表单、登陆和其他信息传输页面等。

      三、可用性测试

      1、导航测试

      导航描述了用户在一个页面内操作的方式,在不同的用户接口控制之间,例如按钮、对话框、列表和窗口等;或在不同的连接页面之间。通过考虑下列问题,可以决定一个Web应用系统是否易于导航:导航是否直观?Web系统的主要部分是否可通过主页存取?Web系统是否需要站点地图、搜索引擎或其他的导航帮助?

      在一个页面上放太多的信息往往起到与预期相反的效果。Web应用系统的用户趋向于目的驱动,很快地扫描一个Web应用系统,看是否有满足自己需要的信息,如果没有,就会很快地离开。很少有用户愿意花时间去熟悉Web应用系统的结构,因此,Web应用系统导航帮助要尽可能地准确。

      导航的另一个重要方面是Web应用系统的页面结构、导航、菜单、连接的风格是否一致。确保用户凭直觉就知道Web应用系统里面是否还有内容,内容在什么地方。

      Web应用系统的层次一旦决定,就要着手测试用户导航功能,让最终用户参与这种测试,效果将更加明显。

      2、图形测试

      在Web应用系统中,适当的图片和动画既能起到广告宣传的作用,又能起到美化页面的功能。一个Web应用系统的图形可以包括图片、动画、边框、颜色、字体、背景、按钮等。图形测试的内容有:

      (1)要确保图形有明确的用途,图片或动画不要胡乱地堆在一起,以免浪费传输时间。Web应用系统的图片尺寸要尽量地小,并且要能清楚地说明某件事情,一般都链接到某个具体的页面。

      (2)验证所有页面字体的风格是否一致。

      (3)背景颜色应该与字体颜色和前景颜色相搭配。

      (4)图片的大小和质量也是一个很重要的因素,一般采用JPGGIF压缩。

      3、内容测试

      内容测试用来检验Web应用系统提供信息的正确性、准确性和相关性。

      信息的正确性是指信息是可靠的还是误传的。例如,在商品价格列表中,错误的价格可能引起财政问题甚至导致法律纠纷;信息的准确性是指是否有语法或拼写错误。这种测试通常使用一些文字处理软件来进行,例如使用Microsoft Word"拼音与语法检查"功能;信息的相关性是指是否在当前页面可以找到与当前浏览信息相关的信息列表或入口,也就是一般Web站点中的所谓"相关文章列表"

      4、整体界面测试

      整体界面是指整个Web应用系统的页面结构设计,是给用户的一个整体感。例如:当用户浏览Web应用系统时是否感到舒适,是否凭直觉就知道要找的信息在什么地方?整个Web应用系统的设计风格是否一致?



      对整体界面的测试过程,其实是一个对最终用户进行调查的过程。一般Web应用系统采取在主页上做一个调查问卷的形式,来得到最终用户的反馈信息。

      对所有的可用性测试来说,都需要有外部人员(与Web应用系统开发没有联系或联系很少的人员)的参与,最好是最终用户的参与。

      四、客户端兼容性测试

      1、平台测试

      市场上有很多不同的操作系统类型,最常见的有WindowsUnixMacintoshLinux等。Web应用系统的最终用户究竟使用哪一种操作系统,取决于用户系统的配置。这样,就可能会发生兼容性问题,同一个应用可能在某些操作系统下能正常运行,但在另外的操作系统下可能会运行失败。

      因此,在Web系统发布之前,需要在各种操作系统下对Web系统进行兼容性测试

      2、浏览器测试

      浏览器是 查看(1251) 评论(0) 收藏 分享 管理

1063/6<123456>
Open Toolbar