欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > PDF文档下载
    分享到微信 分享到微博 分享到QQ空间

    软件测试基础知识与软件测试基本流程资料下载.pdf

    • 资源ID:5968138       资源大小:397.83KB        全文页数:37页
    • 资源格式: PDF        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    软件测试基础知识与软件测试基本流程资料下载.pdf

    1、是把测试对象看做一个黑盒子,测试人员完全不考虑程序内部的逻辑结构和内部特性,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明。因此黑盒测试又叫功能测试或数据驱动测试。黑盒测试方法包括:等价类划分、边界值分析、因果图分析、错误推测法、功能图分析等 Q Q:什么白盒测试?白盒测试方法包括哪些?白盒测试是对软件的过程性细节做细致的检查。是把测试对象看做一个打开的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。通过在不同点检查程序状态,确定实际状态是否与预期的状态一致。因此白盒测试又称为结构测试或逻辑驱动测试。白盒测试方法包括:语句覆

    2、盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖、路径覆盖等 Q Q:软件测试策略都包含哪些?根据软件测试工作的测试策略,一般将软件测试过程分为:单元测试、集成测试、系统测试、验收测试四个大的阶段。什么是单元测试?单元测试是对软件中的基本组成单位进行的测试,如一个模块、一个过程等等。它是软件动态测试的最基本的部分,也是最重要的部分之一,其目的是检验软件基本组成单位的正确性。一个软件单元的正确性是相对于该单元的规约(详细设计)而言的。因此,单元测试以被测试单位的规约为基准。单元测试的主要方法有控制流测试、数据流测试、排错测试、分域测试等等。什么是集成测试?集成测试是在软件系统集成过程中所进行

    3、的测试,其主要目的是检查软件单位之间的接口是否正确。它根据集成测试计划,一边将模块或其他软件单位组合成越来越大的系统,一边运行该系统,以分析所组成的系统是否正确,各组成部分是否合拍。集成测试的策略主要有自顶向下和自底向上两种。测试的热情。测试新人最应该具备的就是测试的热情。因为这是一项事业,一项庞大的工程。系统的灵魂师!什么是系统测试?统测试是对已经集成好的软件系统进行彻底的测试,以验证软件系统的正确性和性能等满足其规约所指定的要求,检查软件的行为和输出是否正确并非一项简单的任务,它被称为测试的“先知者问题”。因此,系统测试应该按照测试计划进行,其输入、输出和其他动态运行行为应该与软件规约进行

    4、对比。软件系统测试方法很多,主要有功能测试、性能测试、随机测试等等。什么是验收测试?验收测试旨在向软件的购买者展示该软件系统满足其用户的需求。它的测试数据通常是系统测试的测试数据的子集。所不同的是,验收测试常常有软件系统的购买者代表在现场,甚至是在软件安装使用的现场。这是软件在投入使用之前的最后测试。什么是自动化测试?一般我们谈到的自动化测试,其实是有两种说法的,一种是 Test Automation,翻译过来叫测试自动化,侧重说明将测试用自动化设计和实现的过程;另外一种是 Automated Testing/Test,翻译过来叫自动化测试,侧重说明自动的测试软件,可以是自动测试软件的功能或者

    5、性能等。表面上看两种是有区别的,但现在我们用的多了,在提到自动化测试时,也就不区分了,基本上代表了一个意思,即:自动化测试是通过工具(程序)来对软件进行测试,一般不需要人为干预或干预很少。Automated Testing/Test Automation:1、Testing employing software tools which execute tests without manual intervention.Can be applied in GUI,performance,API,etc.testing.使用自动化测试工具来进行测试,这类测试一般不需要人干预,通常在 GUI、性能等

    6、测试中用得较多。2、The use of software to control the execution of tests,the comparison of actual outcomes to predicted outcomes,the setting up of test preconditions,and other test control and test reporting functions.Commonly,test automation involves automating a manual process already in place that uses a

    7、formalized testing process.使用软件来控制测试的执行,实际输出和预期输出的对比,测试前提条件的构建,以及其他测试控制条件和测试报告功能。通常,测试自动化涉及自动化对一个已经使用了正式的测验流程的手工过程。显而易见,第二种定义具体,且涵盖了多数情况,特别是只提及软件,而不是一定是“自动化测试工具”,而且不一定自动化测试步骤才叫自动化测试,很多情况下测试前提条件的自动化也是很重要而且很值得自动化的。什么是什么是 AlphaAlpha 和和 BetaBeta 测试?测试?Alpha 测试由用户在开发者的场所进行,并且在开发者对用户的“指导”下进行测试。开发者负责记录发现在错

    8、误和使用中遇到的问题。总之,Alpha 测试是在受控的环境中进行的。Beta 测试由软件的最终用户们在一个或多个客房场所进行。与 Alpha 测试不同,开发者通常在 Beta 测试的现场,因 Beta 测试是软件在开发者不能控制的环境中的“真实”应用。用户 Beta 测试过程中遇到的一切问题(真实在或想像的),并且定期把这些问题报告给开发者。接收到在 Beta 测试期间报告的问题之后,开发者对软件产品进行必要的修改,并准备向全体客户发布最终的软件产品。什么是功能测试?Functional testing(功能测试),也称为 behavioral testing(行为测试),根据产品特征、操作描

    9、述和用户方案,测试一个产品的特性和可操作行为以确定它们满足设计需求。本地化软件的功能测试,用于验证应用程序或网站对目标用户能正确工作。使用适当的平台、浏览器和测试脚本,以保证目标用户的体验将足够好,就像应用程序是专门为该市场开发的一样。功能测试也叫黑盒子测试或数据驱动测试,只需考虑各个功能,不需要考虑整个软件的内部结构及代码.一般从软件产品的界面、架构出发,按照需求编写出来的测试用例,输入数据在预期结果和实际结果之间进行评测,进而提出更加使产品达到用户使用的要求。什么是性能测试?性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。负载测试和压力测试都

    10、属于性能测试,两者可以结合进行。通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。压力测试是通过确定一个系统的瓶颈或者不能接收的性能点,来获得系统能提供的最大服务级别的测试。什么是冒烟测试?冒烟测试(smoke testing),据说是微软起的名字。在微软项目求生法则一书第 14 章“构建过程”关于冒烟测试,就是开发人员在个人版本的软件上执行目前的冒烟测试项目,确定新的程序代码不出故障。冒烟测试的名称可以理解为该种测试耗时短,仅用一袋烟功夫足够了。也有人认为是形象地类比新电路板功基本功能检查。任何新电路板焊好后,先通电检查,如果存在设计缺陷,

    11、电路板可能会短路,板子冒烟了。冒烟测试的对象是每一个新编译的需要正式测试的软件版本,目的是确认软件基本功能正常,可以进行后续的正式测试工作。冒烟测试的执行者是版本编译人员。在一般软件公司的软件编写过程中,内部需要编译多个版本(Build),但是只有有限的几个版本需要执行正式测试(根据项目开发计划),这些需要执行的中间测试版本,在刚刚编译出来后,软件编译人员需要进行基本性能确认测试,例如是否可以正确安装/卸载,主要功能是否实现,是否存在严重死机或数据严重丢失等 Bug。如果通过了该测试,则可以根据正式测试文档进行正式测试。否则,就需要重新编译版本,再次执行版本可接收确认测试,直到成功。新版本的基

    12、本功能确认检查的测试,有的公司称为版本健康检查(Build Sanity Check)。对于编译的本地化软件新版本,除了进行上面提到的各种测试检查,还要检查是否在新的本地化版本中正确包含了全部应该本地化的文件。可以通过采用文件和目录结构比较工具,首先比较源语言版本和本地化版本的文件和目录中的文件数目、文件名称和文件日期等,这个过程称为版本镜像检查(Build Image Check)。其次,分别安装源语言版本和本地化版本,比较安装后的文件和目录结构中的文件数目、文件名称和文件日期等,这个过程称为版本安装检查(Build Installing Check)。什么是随机测试?TOP TOP 浏览浏

    13、览:6:6 次次 在软件测试中除了根据测试样例和测试说明书进行测试外,还需要进行随机测试(Ad-hoc testing),主要是根据测试者的经验对软件进行功能和性能抽查。随机测试是根据测试说明书执行样例测试的重要补充手段,是保证测试覆盖完整性的有效方式和过程。随机测试主要是对被测软件的一些重要功能进行复测,也包括测试那些当前的测试样例(TestCase)没有覆盖到的部分。另外,对于软件更新和新增加的功能要重点测试。须注意针对一些特殊情况点、特殊的使用环境和可能并发性问题进行检查。尤其对以前测试发现的重大 Bug,进行再次测试,可以结合回归测试(Regressive testing)一起进行。理

    14、论上,每一个被测软件版本都需要执行随机测试,尤其对于最后的将要发布的版本更要重视随机测试。随机测试最好由具有丰富测试经验的熟悉被测软件的测试人员进行测试。对于被测试的软件越熟悉,执行随机测试越容易。只有不断的积累测试经验,包括具体的测试执行和对缺陷跟踪记录的分析,不断总结,才能提高。什么是动态测试和静态测试?-动态方法是指通过运行被测程序,检查运行结果与预期结果的差异,并分析运行效率和健壮性等性能,这种方法由三部分组成:构造测试实例、执行程序、分析程序的输出结果。所谓软件的动态测试,就是通过运行软件来检验软件的动态行为和运行结果的正确性。目前,动态测试也是公司的测试工作的主要方式。静态方法是指

    15、不运行被测程序本身,仅通过分析或检查源程序的语法、结构、过程、接口等来检查程序的正确性。对需求规格说明书、软件设计说明书、源程序做结构分析、流程图分析、符号执行来找错。静态方法通过程序静态特性的分析,找出欠缺和可疑之处,例如不匹配的参数、不适当的循环嵌套和分支嵌套、不允许的递归、未使用过的变量、空指针的引用和可疑的计算等。静态测试结果可用于进一步的查错,并为测试用例选取提供指导。什么是测试用例?-测试用例(Test Case)是为某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个程序路径或核实是否满足某个特定需求。测试用例(Test Case)目前没有经典的定义。比较通常的说

    16、法是:指对一项特定的软件产品进行测试任务的描述,体现测试方案、方法、技术和策略。内容包括测试目标、测试环境、输入数据、测试步骤、预期结果、测试脚本等,并形成文档。测试用例(Test Case)是将软件测试的行为活动做一个科学化的组织归纳目的是能够将软件测试的行为转化成可管理的模式;同时测试用例也是将测试具体量化的方法之一 软件测试类型有哪些?TOP 浏览:36 次 软件测试是指使用人工或者自动的手段来运行或测定某个软件产品系统的过程,其目的是在于检验是否满足规定的需求或者弄清预期的结果与实际结果的区别。本文主要描述软件测试的类型。1.1.数据和数据库完整性测试数据和数据库完整性测试 数据与数据

    17、库完整测试是指测试关系型数据库完整性原则以及数据合理性测试。数据库完整性原即:主码完整性:主码不能为空;外码完整性:外码必须等于对应的主码或者为空。数据合理性指数据在数据库中的类型,长度,索引等是否建的比较合理。在项目名称中,数据库和数据库进程应作为一个子系统来进行测试。在测试这些子系统时,不应将测试对象的用户界面用作数据的接口。对于数据库管理系统(DBMS),还需要进行深入的研究,以确定可以支 1 持测试的工具和技术。比如,有两张表:部门和员工。部门中有部门编号,部门名称,部门经理等字段,主码为部门编号;员工表中有员工编号,员工所属部门编号,员工名称,员工类型等字段,主码为员工编号,外码为员

    18、工所属部门编号,对应部门表。如果在某条部门记录中部门编号或员工记录员工编号为空,他就违反主码完整性原则。如果某个员工所属部门的编号为#,但是#在部门编号中确找不到,这就违反外码完整性原则。员工类型如下定义:0:职工,1:职员,2:实习生。但数据类型为 Int,我们都知道 Int占有 4 个字节,如果定义成 char(1).就比原来节约空间。2.2.白盒测试白盒测试 白盒测试是基于代码的测试,测试人员通过阅读程序代码或者通过使用开发工具中的单步调试来判断软件的质量,一般黑盒测试由项目经理在程序员开发中来实现。白盒测试分为动态白盒测试和静态白盒测试 2.1 2.1 静态白盒测试静态白盒测试 利用眼

    19、睛,浏览代码,凭借经验,找出代码中的错误或者代码中不符合书写规范的地方。比如,代码规范中规定,函数必须为动宾结构。而黑盒测试发现一个函数定义如下:Function NameGet().这是属于不符合开发规范的错误。有这样一段代码:if(i=0)这段代码交集为整个数轴,IF 语句没有必要 I=0;while(I100)J=J+100;T=J*PI;在循环体内没有 I 的增加,bug 产生。2.2 2.2 动态白盒测试动态白盒测试 利用开发工具中的调式工具进行测试。比如一段代码有 4 个分支,输入 4 组不同的测试数据使 4 组分支都可以走通而且结果必须正确。看一段代码 if(I0)P1 else

    20、 P2 在调试中输入 I=-1,P1 程序段通过,P2 程序段未通过,属于动态黑盒测试的缺陷 3.3.功能测试功能测试 功能测试指测试软件各个功能模块是否正确,逻辑是否正确。对测试对象的功能测试应侧重于所有可直接追踪到用例或业务功能和业务规则的测试需求。这种测试的目标是核实数据的接受、处理和检索是否正确,以及业务规则的实施是否恰当。此类测试基于黑盒技术,该技术通过图形用户界面(GUI)与应用程序进行交互,并对交互的输出或结果进行分析,以此来核实应用程序及其内部进程。功能测试的主要参考为类似于功能说明书之类的文档。比如一个对电子商务系统,前台用户浏览商品-放入购物车-进入结账台,后台处理订单,配

    21、货,付款,发货,这一系列流程必须正确无误的走通,不能存在任何的错误。4.UI4.UI 测试测试 UI 测试指测试用户界面的风格是否满足客户要求,文字是否正确,页面美工是否好看,文字,图片组合是否完美,背景是否美观,操作是否友好等等 用户界面(UI)测试用于核实用户与软件之间的交互。UI 测试的目标是确保用户界面会通过测试对象的功能来为用户提供相应的访问或浏览功能。另外,UI 测试还可确保 UI 中的对象按照预期的方式运行,并符合公司或行业的标准。包括用户友好性,人性化,易操作性测试。UI 测试比较主观,与测试人员的喜好有关 比如:页面基调颜色刺眼;用户登入页面比较难于找到,文字中出现错别字,页

    22、面图片范围太广等都属于 UI 测试中的缺陷,但是这些缺陷都不太严重。5.5.性能测试性能测试 性能测试主要测试软件测试的性能,包括负载测试,强度测试,数据库容量测试,基准测试以及基准测试 5.15.1 负载测试负载测试 负载测试是一种性能测试指数据在超负荷环境中运行,程序是否能够承担。在这种测试中,将使测试对象承担不同的工作量,以评测和评估测试对象在不同工作量条件下的性能行为,以及持续正常运行的能力。负载测试的目标是确定并确保系统在超出最大预期工作量的情况下仍能正常运行。此外,负载测试还要评估性能特征,例如,响应时间、事务处理速率和其他与时间相关的方面。比如,在 B/S 结构中用户并发量测试就

    23、是属于负载测试的用户,可以使用 webload 工具,模拟上百人客户同时访问网站,看系统响应时间,处理速度如何?5.25.2 强度测试强度测试 强度测试是一种性能测试,他在系统资源特别低的情况下软件系统运行情况。这类测试往往可以书写系统要求的软硬件水平要求。实施和执行此类测试的目的是找出因资源不足或资源争用而导致的错误。如果内存或磁盘空间不足,测试对象就可能会表现出一些在正常条件下并不明显的缺陷。而其他缺陷则可能由于争用共享资源(如数据库锁或网络带宽)而造成的。强度测试还可用于确定测试对象能够处理的最大工作量。比如:一个系统在内存 366M 下可以正常运行,但是降低到 258M 下不可以运行,

    24、告诉内存不足,这个系统对内存的要求就是 366M。5.35.3 数据库容量测试数据库容量测试 数据库容量测试指通过存储过程往数据库表中插入一定数量的数据,看看相关页面是否能够及时显示数据。数据库容量测试使测试对象处理大量的数据,以确定是否达到了将使软件发生故障的极限。容量测试还将确定测试对象在给定时间内能够持续处理的最大负载或工作量。例如,如果测试对象正在为生成一份报表而处理一组数据库记录,那么容量测试就会使用一个大型的测试数据库,检验该软件是否正常运行并生成了正确的报表。做这种测试通常通过书写存储过程向数据库某个表中插入一定数量的记录,计算相关页面的调用时间。比如,在电子商务系统中,通过 i

    25、nsert customer 往 user 表中插入 10 000 数据,看其是否可以正常显示顾客信息列表页面,如果要求达到最多可以处理 100 000 个客户,但是顾客信息列表页面不能够在规定的时间内显示出来,就需要调整程序中的 SQL 查询语句;如果在规定的时间内显示出来,可以将用户数分别提高到 20 000,50 000,100 000 进行测试。5.45.4 基准测试基准测试 基准测试与已知现有的系统进行比较,主要检验是否与类似的产品具有竞争性的一种测试。如果你要开发一套财务系统软件并且你已经获得用友财务系统的性能等数据,你可以测试你这套系统,看看哪些地方比用友财务系统好,哪些地方差?

    26、以便改进自己的系统,也可为产品广告提供数据。5.55.5 竞争测试竞争测试 软件竞争使用各种资源(数据纪录,内存等),看他与其他相关系统对资源的争夺能力。一台机器上即安装您的财务系统,又安装用友财务系统。当 CPU 占有率下降后,看看是否能够强过用友财务系统,而是自己的系统能够正常运行?6.6.安全性和访问控制测试安全性和访问控制测试 安全性和访问控制测试侧重于安全性的两个关键方面:应用程序级别的安全性,包括对数据或业务功能的访问 系统级别的安全性,包括对系统的登录或远程访问。6.16.1 应用程序级别的安全性应用程序级别的安全性 可确保:在预期的安全性情况下,主角只能访问特定的功能或用例,或

    27、者只能访问有限的数据。例如,可能会允许所有人输入数据,创建新账户,但只有管理员才能删除这些数据或账户。如果具有数据级别的安全性,测试就可确保“用户类型一”能够看到所有客户消息(包括财务数据),而“用户二”只能看见同一客户的统计数据。比如 B/S 系统,不通过登入页面,直接输入 URL,看其是否能够进入系统?6.26.2 系统级别的安全性系统级别的安全性 可确保只有具备系统访问权限的用户才能访问应用程序,而且只能通过相应的网关来访问。比如输入管理员账户,检查其密码是否容易猜取,或者可以从数据库中获得?7.7.故障转移和恢复测试故障转移和恢复测试 故障转移和恢复测试指当主机软硬件发生灾难时候,备份

    28、机器是否能够正常启动,使系统是否可以正常运行,这对于电信,银行等领域的软件是十分重要的。故障转移和恢复测试可确保测试对象能成功完成故障转移,并能从导致意外数据损失或数据完整性破坏的各种硬件、软件或网络故障中恢复。故障转移测试可确保:对于必须持续运行的系统,一旦发生故障,备用系统就将不失时机地“顶替”发生故障的系统,以避免丢失任何数据或事务。恢复测试是一种对抗性的测试过程。在这种测试中,将把应用程序或系统置于极端的条件下(或者是模拟的极端条件下),以产生故障(例如设备输入/输出(I/O)故障或无效的数据库指针和关健字)。然后调用恢复进程并监测和检查应用程序和系统,核实应用程序或系统和数据已得到了

    29、正确的恢复。一定要注意主备定时备份 比如电信系统,突然主机程序发生死机,备份机器是否能够启动,使系统能够正常运行,从而不影响用户打电话?8.8.配置测试配置测试 又叫兼容性测试。配置测试核实测试对象在不同的软件和硬件配置中的运行情况。在大多数生产环境中,客户机工作站、网络连接和数据库服务器的具体硬件规格会有所不同。客户机工作站可能会安装不同的软件例如,应用程序、驱动程序等而且在任何时候,都可能运行许多不同的软件组合,从而占用不同的资源。(如浏览器版本,操作系统版本等)下面列出主要配置测试 8.18.1 浏览器兼容性浏览器兼容性 测试软件在不同产商的浏览器下是否能够正确显示与运行;比如测试 IE

    30、,Natscape 浏览器下是否可以运行这套软件?8.28.2 操作系统兼容性操作系统兼容性 测试软件在不同操作系统下是否能够正确显示与运行;比如测试 WINDOWS98,WINDOWS 2000,WINDOWS XP,LINU,UNIX 下是否可以运行这套软件?8.38.3 硬件兼容性硬件兼容性 测试与硬件密切相关的软件产品与其他硬件产品的兼容性,比如该软件是少在并口设备中的,测试同时使用其他并口设备,系统是否可以正确使用.比如在 INTER,舒龙 CPU 芯片下系统是否能够正常运行?这样的测试必须建立测试实验室,在各种环境下进行测试。9.9.安装测试安装测试 安装测试有两个目的。第一个目的

    31、是确保该软件在正常情况和异常情况的不同条件下:例如,进行首次安装、升级、完整的或自定义的安装_都能进行安装。异常情况包括磁盘空间不足、缺少目录创建权限等。第二个目的是核实软件在安装后可立即正常运行。这通常是指运行大量为功能测试制定的测试。安装测试包括测试安装代码以及安装手册。安装手册提供如何进行安装,安装代码提供安装一些程序能够运行的基础数据。10.10.多语种测试多语种测试 又称本地化测试,是指为各个地方开发产品的测试,如英文版,中文版等等,包括程序是否能够正常运行,界面是否符合当地习俗,快捷键是否正常起作用等等,特别测试在 A 语言环境下运行 B 语言软件(比如在英文 win98 下试图运行中文版的程序),出现现象是否正常。本地化测试还要考虑:l


    注意事项

    本文(软件测试基础知识与软件测试基本流程资料下载.pdf)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开