软件测试,大哥们进来帮帮忙啊。

作者&投稿:锻郭 (若有异议请与网页底部的电邮联系)
知道软件测试的进来啊!~

软件测试是一门新兴行业,平均薪酬不错。需要掌握一定的开发语言基础,相关网络和数据库的基础知识,以及主要的软件测试理论。基础学习的话有人引导就会相当简单,因此建议最好找一个做测试工作的朋友指导学习效率最高。
如果是完全自学,建议安排好时间,几方面知识学习同时开始:
1.软件测试基础理论和方法。这块的东西学起来其实不多,重要的是实际的应用。主要掌握黑白盒测试、测试策略、测试方法、测试设计、测试报告等相关理论。在网上或书店随便找一份软件测试学习的书籍都够用了。
2.网络和数据库基础知识。现在的软件基本都离不开网络和数据库应用。所以这两块的基础知识也是必须掌握的。不需要太深,网络知道互联网发展,现代网络架构,IP分配知识,网络七层协议等,数据库要会基本的增删改查语句操作。这个在网上找一些资料和练习题做一做就可以了。
3.开发语言基础。这个很重要,测试要深入发展,掌握至少一门开发语言是很必要的。实际测试的技能需求是大于开发的,除了常用开发语言,最好是能掌握一门脚本语言,作为测试自动化能力拓展的基础。这是通向高级测试的必备技能。这块需要投入很大,但不需要在工作初期要求太高,可以在工作中不断提升。自己选定一门开发语言和脚本语言,持续学习即可。

华东南京肯定是南京博润软件实训中心。实力强口碑好,是个认真做事的实训中心!

软件测试基础
一、软件测试概述
软件测试是软件开发过程的重要组成部分,是用来确认一个程序的品质或性能是否符合开发之前所提出的一些要求。软件测试的目的,第一是确认软件的质量,其一方面是确认软件做了你所期望的事情(Do the right thing),另一方面是确认软件以正确的方式来做了这个事件(Do it right)。第二是提供信息,比如提供给开发人员或程序经理的反馈信息,为风险评估所准备的信息。第三软件测试不仅是在测试软件产品的本身,而且还包括软件开发的过程。如果一个软件产品开发完成之后发现了很多问题,这说明此软件开发过程很可能是有缺陷的。因此软件测试的第三个目的是保证整个软件开发过程是高质量的。
软件质量是由几个方面来衡量的:一、在正确的时间用正确的的方法把一个工作做正确(Doing the right things right at the right time.)。二、符合一些应用标准的要求,比如不同国家的用户不同的操作习惯和要求,项目工程中的可维护性、可测试性等要求。三、质量本身就是软件达到了最开始所设定的要求,而代码的优美或精巧的技巧并不代表软件的高质量(Quality is defined as conformance to requirements, not as “goodness” or “elegance”.)。四、质量也代表着它符合客户的需要(Quality also means “meet customer needs”.)。作为软件测试这个行业,最重要的一件事就是从客户的需求出发,从客户的角度去看产品,客户会怎么去使用这个产品,使用过程中会遇到什么样的问题。只有这些问题都解决了,软件产品的质量才可以说是上去了。
测试人员在软件开发过程中的任务:
1、寻找Bug;
2、避免软件开发过程中的缺陷;
3、衡量软件的品质;
4、关注用户的需求。
总的目标是:确保软件的质量。

二、常用的软件测试方法
1. 黑盒测试
黑盒测试顾名思义就是将被测系统看成一个黑盒,从外界取得输入,然后再输出。整个测试基于需求文档,看是否能满足需求文档中的所有要求。黑盒测试要求测试者在测试时不能使用与被测系统内部结构相关的知识或经验,它适用于对系统的功能进行测试。
黑盒测试的优点有:
1)比较简单,不需要了解程序内部的代码及实现;
2)与软件的内部实现无关;
3)从用户角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题;
4)基于软件开发文档,所以也能知道软件实现了文档中的哪些功能;
5)在做软件自动化测试时较为方便。
黑盒测试的缺点有:
1)不可能覆盖所有的代码,覆盖率较低,大概只能达到总代码量的30%;
2)自动化测试的复用性较低。
2. 白盒测试
白盒测试是指在测试时能够了解被测对象的结构,可以查阅被测代码内容的测试工作。它需要知道程序内部的设计结构及具体的代码实现,并以此为基础来设计测试用例。如下例程序代码:
HRESULT Play( char* pszFileName )
{
if ( NULL == pszFileName )
return;
if ( STATE_OPENED == currentState )
{
PlayTheFile();
}
return;
}
读了代码之后可以知道,先要检查一个字符串是否为空,然后再根据播放器当前的状态来执行相应的动作。可以这样设计一些测试用例:比如字符串(文件)为空的话会出现什么情况;如果此时播放器的状态是文件刚打开,会是什么情况;如果文件已经在播放,再调用这个函数会是什么情况。也就是说,根据播放器内部状态的不同,可以设计很多不同的测试用例。这些是在纯粹做黑盒测试时不一定能做到的事情。
白盒测试的直接好处就是知道所设计的测试用例在代码级上哪些地方被忽略掉,它的优点是帮助软件测试人员增大代码的覆盖率,提高代码的质量,发现代码中隐藏的问题。
白盒测试的缺点有:
1)程序运行会有很多不同的路径,不可能测试所有的运行路径;
2)测试基于代码,只能测试开发人员做的对不对,而不能知道设计的正确与否,可 能会漏掉一些功能需求;
3)系统庞大时,测试开销会非常大。
3. 基于风险的测试
基于风险的测试是指评估测试的优先级,先做高优先级的测试,如果时间或精力不够,低优先级的测试可以暂时先不做。有如下一个图,横轴代表影响,竖轴代表概率,根据一个软件的特点来确定:如果一个功能出了问题,它对整个产品的影响有多大,这个功能出问题的概率有多大?如果出问题的概率很大,出了问题对整个产品的影响也很大,那么在测试时就一定要覆盖到。对于一个用户很少用到的功能,出问题的概率很小,就算出了问题的影响也不是很大,那么如果时间比较紧的话,就可以考虑不测试。
基于风险测试的两个决定因素就是:该功能出问题对用户的影响有多大,出问题的概率有多大。其它一些影响因素还有复杂性、可用性、依赖性、可修改性等。测试人员主要根据事情的轻重缓急来决定测试工作的重点。

4. 基于模型的测试
模型实际上就是用语言把一个系统的行为描述出来,定义出它可能的各种状态,以及它们之间的转换关系,即状态转换图。模型是系统的抽象。基于模型的测试是利用模型来生成相应的测试用例,然后根据实际结果和原先预想的结果的差异来测试系统,过程如下图所示。

三、软件测试的类型
常见的软件测试类型有:
BVT (Build Verification Test)
BVT是在所有开发工程师都已经检入自己的代码,项目组编译生成当天的版本之后进行,主要目的是验证最新生成的软件版本在功能上是否完整,主要的软件特性是否正确。如无大的问题,就可以进行相应的功能测试。BVT优点是时间短,验证了软件的基本功能。缺点是该种测试的覆盖率很低。因为运行时间短,不可能把所有的情况都测试到。
Scenario Tests(基于用户实际应用场景的测试)
在做BVT、功能测试的时候,可能测试主要集中在某个模块,或比较分离的功能上。当用户来使用这个应用程序的时候,各个模块是作为一个整体来使用的,那么在做测试的时候,就需要模仿用户这样一个真实的使用环境,即用户会有哪些用法,会用这个应用程序做哪些事情,操作会是一个怎样的流程。加了这些测试用例后,再与BVT、功能测试配合,就能使软件整体都能符合用户使用的要求。Scenario Tests优点是关注了用户的需求,缺点是有时候难以真正模仿用户真实的使用情况。
Smoke Test
在测试中发现问题,找到了一个Bug,然后开发人员会来修复这个Bug。这时想知道这次修复是否真的解决了程序的Bug,或者是否会对其它模块造成影响,就需要针对此问题进行专门测试,这个过程就被称为Smoke Test。在很多情况下,做Smoke Test是开发人员在试图解决一个问题的时候,造成了其它功能模块一系列的连锁反应,原因可能是只集中考虑了一开始的那个问题,而忽略其它的问题,这就可能引起了新的Bug。Smoke Test优点是节省测试时间,防止build失败。缺点是覆盖率还是比较低。
此外,Application Compatibility Test(兼容性测试),主要目的是为了兼容第三方软件,确保第三方软件能正常运行,用户不受影响。Accessibility Test(软件适用性测试),是确保软件对于某些有残疾的人士也能正常的使用,但优先级比较低。其它的测试还有Functional Test(功能测试)、Security Test(安全性测试)、Stress Test(压力测试)、Performance Test(性能测试)、Regression Test(回归测试)、Setup/Upgrade Test(安装升级测试)等。
四、微软的软件测试工作
1. 基本情况
测试在微软公司是一项非常重要的工作,微软公司在此方面的投入是非常巨大的。微软对测试的重视表现在工程开发队伍的人员构成上,微软的项目经理、软件开发人员和测试人员的比例基本是1:3:3或1:4:4,可以看出开发人员与测试人员的比例是1:1。对于测试的重视还表现在最后产品要发布的时候,此产品的所有相关部门都必须签字,而测试人员则具有绝对的否决权。
测试人员中分成两种职位,Software Development Engineer in Test(测试组的软件开发工程师)实际上还是属于开发人员,他们具备编写代码的能力和开发工具软件的经验,侧重于开发自动化测试工具和测试脚本,实现测试的自动化。Software Test Engineer(软件测试工程师)具体负责测试软件产品,主要完成一些手工测试以及安装配置测试。
2. 测试计划
测试计划是测试人员管理测试项目,在软件中寻找Bug的一种有效的工具。测试计划主要有两个作用,一是评判团队的测试覆盖率以及效率,让测试工作很有条理的逐步展开。二是有利于与项目经理、开发人员进行沟通。有了测试计划之后,他们就能够知道你是如何开展测试工作的,他们也会从中提出很多有益的意见,确保测试工作顺利进行。总之,有了测试计划可以更好的完成测试工作,确保用户的满意度。
测试人员在编写测试计划之前,应获得以下文档:
1)程序经理编写的产品功能说明书或产品开发计划;
2)程序经理或开发人员提供的开发进度表。
根据产品的特性及开发进度安排,测试人员制定具体的测试计划。测试计划通常包括以下内容:
1)测试目标和发布条件:
a. 给出清晰的测试目标描述;
b. 定义产品的发布条件,即在达到何种测试目标的前提下才可以发布产品的某个特 定版本。
2)待测产品范围:
a. 软件主要特性/功能说明,即待测软件主要特性的列表;
b. 特性/功能测试一览,应涵盖所有特性、对话框、菜单和错误信息等待测内容,并列举每个测试范围内要重点考虑的关键功能。
3)测试方法描述:
a. 定义测试软件产品时使用的测试方法;
b. 描述每一种特定的测试方法可以覆盖哪些测试范围。
4)测试进度表:
a. 定义测试里程碑;
b. 定义当前里程碑的详细测试进度。
5)测试资源和相关的程序经理/开发工程师:
a. 定义参与测试的人员;
b. 描述每位测试人员的职责范围;
c. 给出与测试有关的程序经理/开发工程师的相关信息。
6)配置范围和测试工具:
a. 给出测试时使用的所有计算机平台列表;
b. 描述测试覆盖了哪些硬件设备;
c. 测试时使用的主要测试工具。
此外,还应列出测试中可能会面临的风险及测试的依赖性,即测试是否依赖于某个产品或某个团队。比如此项测试依赖性WindowsCE这个操作系统,而这个系统要明年2月份才能做好,那么此项测试就可能只有在明年5月份才能完成,这样就存在着依赖关系。如果那个团队的开发计划往后推,则此项测试也会被推迟。
3. 测试用例开发
一个好的测试用例就是有一个合理的概率来找到Bug,不要冗余,要有针对性,一个测试只针对一件事情。特别是功能测试的时候,如果一个测试是测了两项功能,那么如果测试结果失败的话,就不知道到底是哪项功能出了问题。
测试用例开发中主要使用的技术有等价类划分,边界值的分析,Error Guessing Testing。
等价类划分是根据输入输出条件,以及自身的一些特性分成两个或更多个子集,来减少所需要测试的用例个数,并且能用很少的测试用例来覆盖很多的情况,减少测试用例的冗余度。在等价类划分中,最基本的划分是一个为合法的类,一个为不合法的类。
边界值的分析是利用了一个规律,即程序最容易发生错误的地方就是在边界值的附近,它取决于变量的类型,以及变量的取值范围。一般对于有n个变量时,会有6n+1个测试用例,取值分别是min-1, min, min+1, normal, max-1, max,max+1的组合。边界值的分析的缺点,是对逻辑变量和布尔型变量不起作用,还有可能会忽略掉某些输入的组合。
Error Guessing Testing完全靠的是经验,所设计的测试用例就是常说的猜测。感觉到软件在某个地方可能出错,就去设计相应的测试用例,这主要是靠实际工作中所积累的经验和知识。其优点是速度快,只要想得到,就能很快设计出测试用例。缺点就是没有系统性,无法知道覆盖率会有多少,很可能会遗漏一些测试领域。
实际上在微软是采用一些专门的软件或工具负责测试用例的管理,有一些测试信息可以被记录下来,比如测试用例的简单描述,在哪些平台执行,是手工测试还是自动测试,运行的频率是每天运行一次,还是每周运行一次。此外还有清晰的测试通过或失败的标准,以及详细记录测试的每个步骤。
4. Bug跟踪过程
在软件开发项目中,测试人员的一项最重要使命就是对所有已知Bug进行有效的跟踪和管理,保证产品中出现的所有问题都可以得到有效的解决。一般地,项目组发现、定位、处理和最终解决一个Bug的过程包括Bug报告、Bug评估和分配、Bug处理、Bug关闭等四个阶段:
1)测试工程师在测试过程中发现新的Bug后,应向项目组报告该Bug的位置、表现、当前状态等信息。项目组在Bug数据库中添加该Bug的记录。
2)开发经理对已发现的Bug进行集中讨论,根据Bug对软件产品的影响来评估Bug的优先级,制定Bug的修正策略。按照Bug的优先级顺序和开发人员的工作安排,开发经理将所有需要立即处理的Bug分配给相应的开发工程师。
3)开发工程师根据安排对特定的Bug进行处理,找出代码中的错误原因,修改代码,重新生成产品版本。
4)开发工程师处理了Bug之后,测试人员需要对处理后的结果进行验证,经过验证确认已正确处理的Bug被标记为关闭(Close)状态。测试工程师既需要验证Bug是否已经被修正,也需要确定开发人员有没有在修改代码的同时引入新的Bug。
5. Bug的不同处理方式
在某些情况下,Bug已处理并不意味着Bug已经被修正。开发工程师可以推迟Bug的修正时间,也可以在分析之后告知测试工程师这实际上不是一个真正的Bug。也就是说,某特定的Bug经开发工程师处理之后,该Bug可能包括以下几种状态。
已修正:开发工程师已经修正了相应的程序代码,该Bug不会出现了。
可推迟:该Bug的重要程度较低,不会影响当前应提交版本的主要功能,可安排在 下一版本中再行处理。
设计问题:该Bug与程序实现无关,其所表现出来的行为完全符合设计要求,对此应提交给程序经理处理。
无需修正:该Bug的重要程度非常低,根本不会影响程序的功能,项目组没有必要在这些Bug上浪费时间。
五、成为优秀测试工程师的要求
要成为一名优秀的测试工程师,首先对计算机的基本知识要有很好的了解,精通一门或多门的编程语言,具备一定的程序调试技能,掌握测试工具的开发和使用技术。同时要比较细心,会按照任务的轻重缓急来安排自己的工作,要有很好的沟通能力。此外,还要善于用非常规的方式思考问题,尽可能多的参加软件测试项目,在实践中学习技能,积累经验,不断分析和总结软件开发过程中可能出错的环节。这样,一名优秀的测试工程师就从软件测试的实践中脱颖而出了。
结束语:微软的软件开发经验积淀深厚,微软工程师们的授课生动溢彩,其中有些内容是结合编程代码所作的详细讲解,较难用介绍性文字加以概括提炼,加之笔者受能力和精力所限,只能撷取部分精华内容整理成文以飨读者,因此难免是挂一漏万,甚至会有失误之处,敬请对本系列文章的关注者谅解及指正。最后对微软老师们的辛勤付出再表由衷谢意!

买本入门书去


大哥哥,大姐姐们一定要进来!!!
解:设这批书共有X册 (因为第1天卖出2\/5 X,所以剩余的书为 3\/5 X ,又因为第二天和第三天卖出的比是4:11 ,所以底2天卖出的书= 4\/25 X)方程: 2\/5X-4\/25X=120 X=500 答:...够详细把~! 给我分哦~参考资料:大脑 ...

选一选 填一填 各位大哥大姐们进来吧!
1.井口很大,井水很清,人要是朝井(俯视),能找得见脸孔。2.人们(瞻仰)着在风中飘扬的五星红旗,心中有说不出的自豪。3.他一动也不动,(凝视)着手里的那本书。4.登上宝塔的最高层(环视),只见一片林海绿波荡漾。

大哥 大姐们 进来 帮忙看下
不用淘汰,主流网游还是可以玩的。只是要玩大型的单机游戏就有点困难。CPU性能还算可以,不用换。建议再买一条4G的内存,组成6G的。显卡换成蓝宝石或微星的HD6770就可以玩大型游戏了。

大哥大姐们进来一下吧,好运好运。。。
徐六一,六和刘谐音,六一也是生日,可取徐和刘的唯一,唯一即最爱,满意否。

路过的大哥大姐们进来坐坐。
我是个擦皮鞋的,现在月入十万.要改行的话,来我这试试.

高手们麻烦进来看下..求解,谢谢了
网卡一般都是PCI网卡或者板载网卡,选择得时候定要选择质量较好的,不然可能造成上网质量欠佳。10M或10M\/100M自适应网卡都可。另外,许多机器共享上网,使用双网卡,这也是引起冲突同样值得关注,这时,应当拔起连接局域网或其它电脑的网卡,只用连接ADSL的网卡上网测试,如果故障恢复正常,再检查两块网卡有没...

各位大哥大姐们进来帮个忙!
hello everyone .i am xxx ,from xxx. my hometown is very beautiful.there are some places of interest like xxx. anyway,that is a place which highly worth a visit. my hobby is playing computer games even though i am not good at it.But i will be glad if you guys want to ...

高中数学题,求急,有图大哥大姐们进来帮帮忙
如图

大哥哥们,帮帮忙,都进来
01234567890123 2847-60746-9383 5596-92528-2709 1859-25256-0334 9875-80220-7768 2298-96856-31042847-60746-9383 5596-92528-2709 1859-25256-0334 9875-80220-7768 2298-96856-31042847-60746-9383 5596-92528-2709 1859-25256-0334 9875-80220-7768 2298-96856-31042847-60746-9383 5596-92528-2709...

请各位懂的运动竞赛编排的大哥大姐们进来下吧。。。感激不尽
设32个位置(四个抢号),种子位置为1号、32号、17号、16号。

永兴县17886411797: 想从事软件测试工作,但还很迷茫.各位前辈帮帮忙 谢谢 -
贺爬普特: 没他们说的那么吓人,你先找一个黑盒测试工作,不需要懂开发,很容易的. 以后转做白盒测试,研究代码,需要有一定经验,不过那时候你已经可以边工作边学习了.以后转做项目经理方向,就能转到管理方向上来了.加油哦,我也是像你一样的.现在在做测试,深圳这边很好找的.还有,记得把我答案采纳,我等着你的财富来救急,家里没财富了,嘿嘿,谢谢.

永兴县17886411797: 软件测试这个行业怎么样?请懂行的朋友进来帮忙解答一下吧,谢谢! -
贺爬普特: 软件测试分很多1.大的方向分手动和自动化2.如果想拿银子更多,再做1年完整的手动测试之后,就要往自动化方向发展,这就要学习脚本和开发语言. 当软不同的公司用的语言和脚本不一样,但语言都是想通的,学好一门语言其他知识语法不...

永兴县17886411797: 软件测试做哪一方面的测试较好,要求是什么?大神们帮帮忙 -
贺爬普特: 楼上的答案不知道是从哪里copy过来的,文不对题,实在是误人子弟. 楼主想要学习软件测试的话,个人建议首先应该从了解软件测试相关的一些基础概念、软件测试的流程、常用测试用例设计方法、常用测试工具开始,了解了这些基本概念...

永兴县17886411797: 刚毕业小白,怎么入手做软件测试 -
贺爬普特: 第一步:具备软件测试常识 软件测试行业就像一个围城,很多围城外的人想要进来,一没7a64e4b893e5b19e31333365653261有高人指点,领你进去;二没有人借梯子给你让你走进去.所以说,如果你是跨专业或者是换职业来做软件测试工程...

永兴县17886411797: 我是高中毕业,学软件测试是不是很难,但那老师说可以,各位,帮帮忙啊 -
贺爬普特: 首先,学什么都不容易,所以你要有兴趣和足够的毅力才能成功.另外,从事IT行业很累,将来能不能赚钱和你的水平、运气有关.最后要提醒你,现在办学已经成为了一个高利润行业,误人子弟的很多,你要小心哦!

永兴县17886411797: 各位软件测试的前辈们.你们说说软件测试的前景怎样.做软件测试这行发展可以吗? -
贺爬普特: 看你个人发展方向,测试这个行业想要做到很好不是非常容易,

永兴县17886411797: 软件测试,谁能给我一个测试项目的例子,大概的说明一下,呵呵.简单一点的,谢谢哈 -
贺爬普特: 很简单,也很经典的微软 一次性水杯测试 功能度:用水杯装水看漏不漏;水能不能被喝到 安全性:杯子有没有毒或细菌,检查水杯被破坏后,是否会造成使用者伤害 可靠性:杯子从不同高度落下的损坏程度 可移植性:杯子再不同的地方、...

永兴县17886411797: 关于软件测试的问题.大家帮帮忙...谢谢 -
贺爬普特: 一、判断题(每题1分,12 分,正确的√,错误的╳) 1.软件测试的目的是尽可能多的找出软件的缺陷.(对) 2.Beta 测试是验收测试的一种.(错) 3.验收测试是由最终用户来实施的.(错) 4.项目立项前测试人员不需要提交任何工件.(...

永兴县17886411797: 软件测试怎么样,好学吗,我学软件技术的,基础学的不好,怎样能从事测试工作呢?大哥大姐帮帮我、、 -
贺爬普特: 随着人们对服务质量的要求越来越高,所以测试业的前景应该是一片光明……哈哈,因为我也是搞测试的. 学测试应该不是很难,但是个人觉得有必要把基础打好,这样有利于以后从事相关工作.还想说的一点是,目前国内的一些小公司还是不太注重测试的,所以如果你进了小公司的话,可能会觉得自己的这个岗位可有可无,所以建议你进大公司或者是外企.当然,如果进外企的话最好把英语学好点…… 至于怎么从事这个工作,你可以学习一下基本知识,亦或报一个培训机构,然后去找一家实习公司就OK啦! 希望我能帮到你!有问题可加QQ289904111

永兴县17886411797: 软件测试员这个工作怎么样?具体都做什么工作?急!!!谢谢了 -
贺爬普特: 软件测试也是一们很深的学问 近几年开始流行,软件测试人员主要分2类,白盒测试人员和黑盒测试人员,白盒测试人员是站 在开发人员立场测试,应具备一定的开发基础(语言、算法等).黑盒测试人员站在用户角度测试 ,应具备一定的现场经验和专也经验(比如财务软件最好有会计来进行黑盒测试). 但不论哪类测试,心细、谨慎的工作态度很重要.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网