发布新日志

  • zz软件测试工程师被信产部列为紧缺人才

    2008-01-17 17:47:36

     近日,美国劳工部发布了一项最新预测,列出了未来8年间需求增长最快的25个职位。其中,网络系统和数据通讯分析、计算机软件测试、计算机系统软件工程师等五IT职位位列前列。

    ...

     “我不做软件,但我使软件更好。”这是很多软件测试人员的座右铭。要实现这一目标,软件测试人员就要有多项本领。“一个合格的软件测试工程师应具备专业的知识背景、实际的操作经验、逆向的思维能力、团队的合作精神、快速的学习能力、较强的沟通能力和责任心。”

    雅虎中国品质保证部经理鲍海燕如是说。目前,国内软件测试人才的来源主要有三方面:一是以前做软件开发转行的技术人员;二是来自计算机专业的高等学院毕业生;三是来自培训机构的专业学员。在对这三种渠道提供的人才满意度调查中,七成企业认为“计算机专业应届毕业生缺乏动手能力”,六成企业认为“有相关工作经验的人员并未系统掌握软件测试流程,缺乏系统培训”,而对于培训机构提供的学员,绝大多数企业表示认可。“专业培训机构培养的测试人员具有专业背景及相关技术积累,大都掌握了自动化软件测试工具,工作效率大大提高,软件测试结果也更为精确。”中国搜索测试部经理张新泳介绍说。

      ...我现在要是公布招聘10个软件开发人员,会来几百人投简历;如果我说招聘一名软件测试工程师,应聘者就会少很多。” 北京红旗中文贰仟软件技术有限公司总经理胡才勇不由感慨。智联招聘等招聘网站甚至撰文称“从入门级的初级测试工程师到高级测试工程师及项目负责人全线短缺。” 套用狄更斯那句话说:对于急需软测人员的企业来说,这是一个最坏的时代,但对软件测试人才来说,这是一个最好的时代。

  • zz vb script functions

    2008-01-15 14:02:13

      在编写 QTP脚本的过程中,有一些经常使用的函数。如果我们能熟悉这些常用的函数及其用法,并合理地使用它们,那么一些问题就很容易得到解决。下面是我总结的VBscrīpt中常用的函数及其用法。
    1,GetROProperty
      说明:You use the GetROProperty method to retrieve the current value of a test object property from a run-time object in your application.
      一般来说,所有的对象都可以使用此方法得到运行时对象的实际值。
      语法:object.GetROProperty (Property, [PropertyData])

    ButtonName=Browser("QA Home Page").Page("QA Home Page").WebButton("Submit").GetTOProperty("Name")
    2,WaitProperty
      说明:Waits until the specified object property achieves the specified value or exceeds the specified timeout before continuing to the next step.
      此方法可以解决由于等待系统进行处理某些操作或网络原因引起的测试对象同步问题。
         语法:object.WaitProperty (PropertyName, PropertyValue, [TimeOut])

    Window("Test").Static("Status:").WaitProperty "text", "Ready", 30000
    3,Instr
    Returns the position of the first occurrence of one string within another.
      可以得到一个字符串在另外一个字符串中首次出现的位置。
      语法: InStr([start, ]string1, string2[, compare])

    4,Split
    Returns a zero-based, one-dimensional array containing a specified number of substrings.
      此函数可以把原来用某个特殊字符串连接起来的字符串分割开,得到一个一维的数组。
    5,UBound
    Returns the largest available subscrīpt for the indicated dimension of an array.
    得到某个维度的最大值。
    6,Trim
    Returns a copy of a string without leading spaces (LTrim), trailing spaces (RTrim), or both leading and trailing spaces (Trim).

      如果需要删除字符串左边的所有空格,那么可以使用LTrim  函数;如果需要删除字符串右边的所有空格,那么可以使用RTrim  函数。如果需要删除字符串左边和右边的所有空格,那么可以使用Trim  函数。
    7,Ucase
    Returns a string that has been converted to uppercase.
      此函数可以把所有的字符都转换成相应的大写。
    8,LCase
    Returns a string that has been converted to lowercase.
      此函数可以把所有的字符都转换成相应的小写。
    9,Cstr
    Returns an expression that has been converted to a Variant of subtype String.

      由于VBscrīpt只有一种类型Variant,你可以使用此函数把某个变量强制转换成String类型。
    10,CInt
    Returns an expression that has been converted to a Variant of subtype Integer.
      由于VBscrīpt只有一种类型Variant,你可以使用此函数把某个变量强制转换成Integer类型。
      在描述性编程语句中,最常用的函数有:

    11,Create
      这是创建一类或一个对象时必须要使用的方法。

    12,ChildObjects
      使用此方法可以得到符合某些条件的一类对象的集合。

    13,Count
      使用使用此方法可以得到符合某些条件的一类对象的个数。
    The following example uses the Create method to return a Properties collection object named EditDescrīption, and then uses the returned object to instruct QuickTest to enter the text: MyName in the first WebEdit object in the Mercury Tours page with the name UserName.
    Set EditDesc = Descrīption.Create()
    EditDesc("micclass").Value = "WebEdit"
    EditDesc("Name").Value = "userName"

    Set Lists = Browser("Welcome: Mercury").Page("Welcome: Mercury").ChildObjects(EditDesc)
    NumberOfLists = Lists.Count()
    If NumberOfLists > 0 Then
      Browser("Welcome: Mercury").Page("Welcome: Mercury").Lists(0).Set "MyName"
    End If
      一些具体的用法可以在 QTP的帮助里面找到。 个人的建议是:你最好按照 QTP里面提供的例子,自己使用这些函数自己写几行语句,运行后看一下运行结果,结合QTP帮助里面的说明,这样学习会快,也记得牢固。
      在输出结果时, 常用的函数有 Msgbox 和 Print 函数。Msgbox 函数在 QTP8.2 及其以上版本都可以使用;Print 函数需要在 QTP 9.2 版本上使用,QTP 8.2 不支持此函数,不知道 QTP 9.0是否支持此函数。
      希望大家共同总结一下,一起进步。

  • zz vb script functions

    2008-01-15 14:02:12

      在编写 QTP脚本的过程中,有一些经常使用的函数。如果我们能熟悉这些常用的函数及其用法,并合理地使用它们,那么一些问题就很容易得到解决。下面是我总结的VBscrīpt中常用的函数及其用法。
    1,GetROProperty
      说明:You use the GetROProperty method to retrieve the current value of a test object property from a run-time object in your application.
      一般来说,所有的对象都可以使用此方法得到运行时对象的实际值。
      语法:object.GetROProperty (Property, [PropertyData])

    ButtonName=Browser("QA Home Page").Page("QA Home Page").WebButton("Submit").GetTOProperty("Name")
    2,WaitProperty
      说明:Waits until the specified object property achieves the specified value or exceeds the specified timeout before continuing to the next step.
      此方法可以解决由于等待系统进行处理某些操作或网络原因引起的测试对象同步问题。
         语法:object.WaitProperty (PropertyName, PropertyValue, [TimeOut])

    Window("Test").Static("Status:").WaitProperty "text", "Ready", 30000
    3,Instr
    Returns the position of the first occurrence of one string within another.
      可以得到一个字符串在另外一个字符串中首次出现的位置。
      语法: InStr([start, ]string1, string2[, compare])

    4,Split
    Returns a zero-based, one-dimensional array containing a specified number of substrings.
      此函数可以把原来用某个特殊字符串连接起来的字符串分割开,得到一个一维的数组。
    5,UBound
    Returns the largest available subscrīpt for the indicated dimension of an array.
    得到某个维度的最大值。
    6,Trim
    Returns a copy of a string without leading spaces (LTrim), trailing spaces (RTrim), or both leading and trailing spaces (Trim).

      如果需要删除字符串左边的所有空格,那么可以使用LTrim  函数;如果需要删除字符串右边的所有空格,那么可以使用RTrim  函数。如果需要删除字符串左边和右边的所有空格,那么可以使用Trim  函数。
    7,Ucase
    Returns a string that has been converted to uppercase.
      此函数可以把所有的字符都转换成相应的大写。
    8,LCase
    Returns a string that has been converted to lowercase.
      此函数可以把所有的字符都转换成相应的小写。
    9,Cstr
    Returns an expression that has been converted to a Variant of subtype String.

      由于VBscrīpt只有一种类型Variant,你可以使用此函数把某个变量强制转换成String类型。
    10,CInt
    Returns an expression that has been converted to a Variant of subtype Integer.
      由于VBscrīpt只有一种类型Variant,你可以使用此函数把某个变量强制转换成Integer类型。
      在描述性编程语句中,最常用的函数有:

    11,Create
      这是创建一类或一个对象时必须要使用的方法。

    12,ChildObjects
      使用此方法可以得到符合某些条件的一类对象的集合。

    13,Count
      使用使用此方法可以得到符合某些条件的一类对象的个数。
    The following example uses the Create method to return a Properties collection object named EditDescrīption, and then uses the returned object to instruct QuickTest to enter the text: MyName in the first WebEdit object in the Mercury Tours page with the name UserName.
    Set EditDesc = Descrīption.Create()
    EditDesc("micclass").Value = "WebEdit"
    EditDesc("Name").Value = "userName"

    Set Lists = Browser("Welcome: Mercury").Page("Welcome: Mercury").ChildObjects(EditDesc)
    NumberOfLists = Lists.Count()
    If NumberOfLists > 0 Then
      Browser("Welcome: Mercury").Page("Welcome: Mercury").Lists(0).Set "MyName"
    End If
      一些具体的用法可以在 QTP的帮助里面找到。 个人的建议是:你最好按照 QTP里面提供的例子,自己使用这些函数自己写几行语句,运行后看一下运行结果,结合QTP帮助里面的说明,这样学习会快,也记得牢固。
      在输出结果时, 常用的函数有 Msgbox 和 Print 函数。Msgbox 函数在 QTP8.2 及其以上版本都可以使用;Print 函数需要在 QTP 9.2 版本上使用,QTP 8.2 不支持此函数,不知道 QTP 9.0是否支持此函数。
      希望大家共同总结一下,一起进步。

  • zz 测试的一些定义

    2008-01-15 13:54:46

    单元测试:单元测试是对软件中的基本组成单位进行的测试,如一个模块、一个过程等等。它是软件动态测试的最基本的部分,也是最重要的部分之一,其目的是检验软件基本组成单位的正确性。一个软件单元的正确性是相对于该单元的规约而言的。因此,单元测试以被测试单位的规约为基准。单元测试的主要方法有控制流测试、数据流测试、排错测试、分域测试等等。

    集成测试:集成测试是在软件系统集成过程中所进行的测试,其主要目的是检查软件单位之间的接口是否正确。它根据集成测试计划,一边将模块或其他软件单位组合成越来越大的系统,一边运行该系统,以分析所组成的系统是否正确,各组成部分是否合拍。集成测试的策略主要有自顶向下和自底向上两种。

    系统测试:系统测试是对已经集成好的软件系统进行彻底的测试,以验证软件系统的正确性和性能等满足其规约所指定的要求,检查软件的行为和输出是否正确并非一项简单的任务,它被称为测试的“先知者问题”。因此,系统测试应该按照测试计划进行,其输入、输出和其他动态运行行为应该与软件规约进行对比。软件系统测试方法很多,主要有功能测试、性能测试、随机测试等等。

    验收测试:验收测试旨在向软件的购买者展示该软件系统满足其用户的需求。它的测试数据通常是系统测试的测试数据的子集。所不同的是,验收测试常常有软件系统的购买者代表在现场,甚至是在软件安装使用的现场。这是软件在投入使用之前的最后测试。

    回归测试:回归测试是在软件维护阶段,对软件进行修改之后进行的测试。其目的是检验对软件进行的修改是否正确。这里,修改的正确性有两重含义:一是所作的修改达到了预定目的,如错误得到改正,能够适应新的运行环境等等;二是不影响软件的其他功能的正确性。
  • zz 软件测试面试题 zz

    2007-12-26 13:51:01

    1。软通动力面试笔答
     

    1.白箱测试和黑箱测试是什么?什么是回归测试?

    2.
    单元测试、集成测试、系统测试的侧重点是什么?

    3.
    设计用例的方法、依据有那些?

    4.
    一个测试工程师应具备那些素质和技能?

    5.
    集成测试通常都有那些策略?

    6.
    你用过的测试工具的主要功能、性能及其他?

    7.
    一个缺陷测试报告的组成

    8.
    基于WEB信息管理系统测试时应考虑的因素有哪些?

    9.
    软件本地化测试比功能测试都有哪些方面需要注意?

    10.
    软件测试项目从什么时候开始,?为什么?

    11.
    需求测试注意事项有哪些?

    12.
    简述一下缺陷的生命周期

    13.
    测试分析测试用例注意(事项)?




    二。瑞星笔试题(15道)
     

    1.一台计算机的IP192.168.10.71子网掩码255.255.255.64192.168.10.201是同一局域网吗?
    2.internet
    e-mail协仪,IE的协仪,NAT是什么,有什么好处,能带来什么问题?DNS是什么,它是如何工作的?
    3.PROXY
    是如何工作的?
    4.win2k
    系统内AT命令完成什么功能,Messenger服务是做什么,怎么使用?
    5
    进程,线程的定义及区别
    6,32
    位操作系统内,1进程地址空间多大,进程空间与物理内存有什么关系?
    7
    网络攻击常用的手段,防火墙如何保证安全.
    8
    如何配静态IP,如何测网络内2台计算机通不通,PING一次返几个数据包?
    9WIN9X
    WINNT以上操作系统有"服务",服务是什么,如何停止服务?
    10AD
    WIN2KSERVER上建需什么文件格式,AD是什么?XP多用户下"注销""切换"的区别.
    11UDP
    可以跨网段发送吗?
    12
    最简单的确认远程计算机(win2K以上)某个监听端口是正常建立的?
    13
    软件测试的定义,测试工作是枯燥反复的,你是如何理解的?黑盒,白盒,回归,压力测试的定义.
    14winrunner,loadrunner
    是什么,区别
    15
    磁盘分区如何分类,请举例说明安装操作系统的注意事项.
    (1
    小时答题)


    三。中软的面试题

     

    .    简答题.
    1.    
    避免死锁的方法有哪些?
    2.    
    Sybase数据库中注册用户与数据库用户有什么区别?
    3.    
    MS SQL_Server 数据库中通过什么约束保证数据库的实体完整性
    4.    
    内存有哪几种存储组织结构.请分别加以说明
    5.    JAVA
    中的Wait() notify()方法使用时应注意些什么?
    6.    
    用户输入一个整数.系统判断,并输出是负数还是非负数,请设计测试用例.
    7.    
    操作系统中的同步和互诉解决了什么问题
    8.    UNIX
    init
    .    编写类String 的构造函数,析构函数和赋值函数
    已知类String 的原型为
    class string
    {
    public:
    string(const char *str=null);//
    普通构造函数
    string(const string &other);//
    拷贝构造函数
    ---string(void);
    string &operate=(const string &other);//
    赋值函数
    private:
    char * m-data;//
    用于保存字符串
    };
    请编写string 的上述4个函数
    .    有关内存的思考题
    1.    void getmemory(char *p)
    { p=(char*)mallol(100);
    }
    void test(void)
    {
    char * str =null;
    getmemory(str);
    strcpy(str,”hello,world”);
    printf(str);
    }
    请问运行Test函数会有什么样的结果
    2.    char*getmemory(void)
    { char p[]=”hello world”;
    return p;
    }
    void test(void)
    {
    char *str=null;
    str=Getmemory();
    printf(str);
    }
    请问运行Test 函数会有什么样的结果.

    三。奇虎面试题

     

    前三道程序题
    (下面的题不排序,有笔试题,也有面试题)
    4
    、怎么划分缺陷的等级?
    5
    、怎么评价软件工程师?
    6
    、软件工程师的素质是什么?
    7
    、怎么看待软件测试?
    8
    、软件测试是一个什么样的行业?
    9
    、图书(图书号,图书名,作者编号,出版社,出版日期)
     
    作者(作者姓名,作者编号,年龄,性别)
     
    SQL语句查询年龄小于平均年龄的作者姓名、图书名,出版社。
    10
    、你的职业生涯规划
    11
    、测一个三角形是普通三角形、等腰三角形、等边三角形的流程图,测试用例。
    12
    、写出你常用的测试工具。
    13
    lordrunner分哪三部分?
    14
    、希望以后的软件测试是怎么样的一个行业?
    15
    .软件测试项目从什么时候开始?
     
    我答:从软件项目的需要分析开始。
       
    问:为什么从需求分析开始?有什么作用?

    四。北京博彦科技笔试+面试

    笔试题

    1
    .文件格式系统有哪几种类型?分别说说win95win98winMew2kwinNTwinXP分别支持那些文件系统。
    2
    .分别填入一个语句,完成下面的函数,通过递归计算数组a[100]的前n个数之和。
    Int sum ( int a[],int n )
    {
      if (n>0) return___________________________;
      else return________________________;
    }

    3
    .写出你所知道的3种常用的排序方法,并用其中一种方法设计出程序为数组a[100]排序。
    4
    .什么是兼容性测试?兼容性测试侧重哪些方面,请按照优先级用矩阵图表列出。
     
    (这题的第二问我不会答,所以原题目记得不是很清楚,大家能看明白问什么就好)
    5
    .我现在有个程序,发现在WIN98上运行得很慢,怎么判别是程序存在问题还是软硬件系统存在问题?
    6
    .翻译,中——英,有关P2P点对点文件传输的原理。
    7
    .翻译,英——中,有关互联网的发展对商务、学习、交流的影响。

    笔试完了是初步的面试
    先问了个问题:FAT16/FAT32/NTFS 哪个的安全性最好,为什么?(不会答)
    又做了两道题,
    一题是关于C++类的继承,看程序写出输出结果,A是虚类,B继承A,跟一般C++的书上的习题差不多。
    一题是写出在32位机器下,计算几个变量的size

    最后用英文介绍一下自己

  • zz 软件测试笔试题 zz

    2007-12-26 13:51:01

    题与答案尽供参考

    一、判断题

    1.软件测试的目的是尽可能多的找出软件的缺陷。(Y)

    2.Beta 测试是验收测试的一种。(Y)

    3.验收测试是由最终用户来实施的。(N)

    4.项目立项前测试人员不需要提交任何工件。(Y)

    5.单元测试能发现约80%的软件缺陷。(Y)

    6.代码评审是检查源代码是否达到模块设计的要求。(N)

    7.自底向上集成需要测试员编写驱动程序。(Y)

    8.负载测试是验证要检验的系统的能力最高能达到什么程度。(N)

    9.测试人员要坚持原则,缺陷未修复完坚决不予通过。(N)

    10.代码评审员一般由测试员担任。(N)

    11.我们可以人为的使得软件不存在配置问题。(N)

    12.集成测试计划在需求分析阶段末提交。(N)



    二、选折

    1.软件验收测试的合格通过准则是:(ABCD)

    A. 软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。

    B. 所有测试项没有残余一级、二级和三级错误。

    C. 立项审批表、需求分析文档、设计文档和编码实现一致。

    D. 验收测试工件齐全。

    2.软件测试计划评审会需要哪些人员参加?(ABCD)

    A.项目经理

    B.SQA 负责人

    C.配置负责人

    D.测试组

    3.下列关于alpha 测试的描述中正确的是:(AD)

    A.alpha 测试需要用户代表参加

    B.alpha 测试不需要用户代表参加

    C.alpha 测试是系统测试的一种

    D.alpha 测试是验收测试的一种

    4.测试设计员的职责有:(BC)

    A.制定测试计划

    B.设计测试用例

    C.设计测试过程、脚本

    D.评估测试活动

    5.软件实施活动的进入准则是:(ABC)

    A.需求工件已经被基线化

    B.详细设计工件已经被基线化

    C.构架工件已经被基线化

    D.项目阶段成果已经被基线化

    三、添空

    1.软件验收测试包括:正式验收测试,alpha测试,beta测试。

    2.系统测试的策略有:功能测试,性能测试,可靠性测试,负载测试,易用性测试,强度测试,安全测试,配置测试,安装测试,卸载测试,文挡测试,故障恢复测试,界面测试,容量测试,兼容性测试,分布测试,可用性测试,(有的可以合在一起,分开写只要写出15就满分哦)

    3.设计系统测试计划需要参考的项目文挡有:软件测试计划,软件需求工件和迭代计划。

    4.对面向过程的系统采用的集成策略有:自顶向下,自底向上两种。

    5.(这题出的有问题哦,详细的5步骤为~~)通过画因果图来写测试用例的步骤为:

    (1)分析软件规格说明描述中,哪些是原因(即输入条件或输入条件的等价类),哪些是结果(即输出条件),并给每个原因和结果赋予一个标识符。

    (2)分析软件规格说明描述中的语义,找出原因与结果之间,原因与原因之间对应的是什么关系? 根据这些关系,画出因果图。

    (3)由于语法或环境限制,有些原因与原因之间,原因与结果之间的组合情况不可能出现。为表明这些特殊情况,在因果图上用一些记号标明约束或限制条件。

    (4)把因果图转换成判定表。

    (5)把判定表的每一列拿出来作为依据,设计测试用例。



    四、简答(资料是搜集整理的,感谢前辈的解题)无

    1.区别阶段评审的与同行评审

    同行评审目的:发现小规模工作产品的错误,只要是找错误;

    阶段评审目的:评审模块 阶段作品的正确性 可行性 及完整性

    同行评审人数:3-7人 人员必须经过同行评审会议的培训,由SQA指导

    阶段评审人数:5人左右 评审人必须是专家 具有系统评审资格

    同行评审内容:内容小 一般文档 < 40页, 代码 < 500行

    阶段评审内容: 内容多,主要看重点

    同行评审时间:一小部分工作产品完成

    阶段评审时间: 通常是设置在关键路径的时间点上!



    2.什么是软件测试

    为了发现程序中的错误而执行程序的过程



    3简述集成测试的过程

    系统集成测试主要包括以下过程:

    1. 构建的确认过程。

    2. 补丁的确认过程。

    3. 系统集成测试测试组提交过程。

    4. 测试用例设计过程。

    5. 测试代码编写过程。

    6. Bug的报告过程。

    7. 每周/每两周的构建过程。

    8. 点对点的测试过程。

    9. 组内培训过程。



    4 怎么做好文档测试

    仔细阅读,跟随每个步骤,检查每个图形,尝试每个示例。P142

    检查文档的编写是否满足文档编写的目的

    内容是否齐全,正确

    内容是否完善

    标记是否正确





    5 白盒测试有几种方法

    总体上分为静态方法和动态方法两大类。

    静态:关键功能是检查软件的表示和描述是否一致,没有冲突或者没有歧义

    动态:语句覆盖、判定覆盖、条件覆盖、判定条件覆盖、条件组合覆盖、路径覆盖。



    6系统测试计划是否需要同行审批,为什么

    需要,系统测试计划属于项目阶段性关键文档,因此需要评审。



    7Alpha测试与beta的区别

    Alpha测试 在系统开发接近完成时对应用系统的测试;测试后仍然会有少量的设计变更。这种测试一般由最终用户或其它人员完成,不能由程序或测试员完成。



    Beta测试 当开发和测试根本完成时所做的测试,最终的错误和问题需要在最终发行前找到。这种测试一般由最终用户或其它人员完成,不能由程序员或测试员完成。



    8比较负载测试,容量测试和强度测试的区别

    负载测试:在一定的工作负荷下,系统的负荷及响应时间。

    强度测试:在一定的负荷条件下,在较长时间跨度内的系统连续运行给系统性能所造成的影响。

    容 量测试:容量测试目的是通过测试预先分析出反映软件系统应用特征的某项指标的极限值(如最大并发用户数、数据库记录数等),系统在其极限值状态下没有出现 任何软件故障或还能保持主要功能正常运行。容量测试还将确定测试对象在给定时间内能够持续处理的最大负载或工作量。容量测试的目的是使系统承受超额的数据 容量来发现它是否能够正确处理。容量测试是面向数据的,并且它的目的是显示系统可以处理目标内确定的数据容量。

我的栏目

数据统计

  • 访问量: 7752
  • 日志数: 18
  • 建立时间: 2007-12-26
  • 更新时间: 2008-07-10

RSS订阅

Open Toolbar