61阅读

软件测试需要学什么-给想要学习软件测试同学们的建议

发布时间:2018-01-25 所属栏目:交互

一 : 给想要学习软件测试同学们的建议

因为我明天就要回老家过年,所以会有约二周时间不能上论坛,也不能上QQ和MSN。(www.61k.com]这期间肯定还是会有一些朋友想要了解学习软件测试的相关内容。所以我整理了一下,给想要学习软件测试的朋友们一些建议,供大家参考。一、明确学习的目的。过完年,就是毕业生找工作的高峰期了,很多同学目前还没有找到合适的工作,压力很大。在这样的情况下,急是肯定的,但还是要学着冷静一下。其实大家都是这么过来的,一个平和的心态还是很重要的。不少同学想要通过培训来提升自己,以便在找工作的同时多一些保障或是机会。这样想是可行,可以理解的,但切不可盲目。那么,关于软件测试的学习,我有几点想说。第一,先思考自己是否适合进入IT行业很多同学在大学时选择计算机专业,并不是因为自己适合这个专业而报考,而是因为看好行业发展或是为了方便以后找工作而选择的专业。但事实上,在进入学校学习之后,适合和不适合,就已经能够显现出来了。有的人有很强的理解能力,思维逻辑也很清晰,有的人则是靠死背书来过关,并没有真正理解其中的意思。所以,在毕业的时候,自己是否能够进入IT行业,是否适合从事IT行业,首先就要先有个底。不要盲目的为了工作而工作。做决定,做选择之前,一定要考虑清楚。第二,思考一下自己的职业规划,是否是真的想以软件测试做为自己的发展方向。并不是所有人都适合从事软件测试工作的。虽然都说,努力+奋斗一定会走向成功。但事实上,一点天分,一点基础再加上很多的努力,远比零基础的努力奋斗要更容易走向成功。这一点,我相信不少朋友深有感触。国内软件测试有很大的需求量,但并不是数量的需求量,而是质量的需求量,不要被所谓的需求量所蒙蔽双眼。企业对于测试人员需求,主要是:专科以上,计算机相关专业为主/或专科以上,具备一定的计算机基础能力(掌握C,SQL,数据结构等计算机的专业知识)。关于这一块,大家可以到51JOB上好好看看。51JOB除了是一个提供找工作机会的场所,也是了解自己不足,了解企业需求的最佳场所。所以,了解软件测试行业现状及前景,并有一个个人的职业发展规划是很重要的。有了明确的目标,才会有踏实明确的行动。是否是真的想要把软件测试做为自己的发展,做为一个事业去奋斗,需要想清楚。我经常都建议大家要考虑清楚再做决定,也就是这个意思。如果你完全不了解行业现状,不了解自身的状态和处境就盲目的进入这个行业,对自己没有好处,很有可能会更加迷茫。相反

软件测试需要学什么 给想要学习软件测试同学们的建议

,如果你了解了行业现状,对于自己也有一个了解,有一个规划,在学习的时候,会很有方向的,不会把太多的时间浪费掉。(www.61k.com)第三,在确定了自己的方向和目的之后,再考虑要如何进入这个行业。很多人在找软件测试工作的时候,都会觉得苦无门可进。一方面是因为自己没有经验,一方面是因为自己不懂软件测试,一方面,是因为自己的计算机基础不够扎实……很多朋友,拼命的发简历,但都没有什么回音;或是去企业面试之后,达不到企业的要求。从胸闷到绝望,但却没有去审视自己的问题。(说到简历,这个其实又是另一个问题了。投简历也是一门学门。)于是很多人会想到要专门的学习软件测试,通过培训和学习,以便得以入行软件测试。二,学习软件测试的几种方式。1,有测试环境,边工作边学习。如果你有这样的环境,我觉得这是非常好的。边做边学,边学边问,平时多下点苦功,对于个人的提升是有很大帮助的。论坛里也有不少从事测试的网友都是这样一步步走过来的。至于所学的东西,除了计算机的基础知识之外,就是测试的一些基本概念,测试的流程,测试方法,以及自动化测试工具……平时也是要花大量的时间去阅读很多的测试相关资料的。2,自学。自学,是很不容易的。需要有坚定的信念,一定的学习能力。如果本身具备一定的计算机基础,那是最好的。在巩固基础的同时,通过看书,看资料来学习软件测试的知识。但因为没有操作的环境,所以学习起来可能会显得很艰难。3,培训。关于培训,我有以下几点要说:1,培训是指引,是开始,不是结果。工作不是只要你培训了就有的,而是你通过培训,个人能力和技术得到提升,并且达到了企业的要求。2,“参加培训”不等于“高薪好工作”,切莫将这二样之间划上等号。参加培训学习之后,在某种程度上会有助于你找工作,但并不等于所谓的“高薪”或是“好工作”。社会是现实的,要学着冷眼看世界。薪水/工作的好坏程度,是跟你的个人能力有直接关系的。3,了解自身能力基础,了解自身优缺点。很多网友都问过,想学习软件测试,需要什么样的基础,我也在论坛上经常回答过这些问题。1,具备一定的计算机基础。掌握C,SQL,数据结构,操作系统,计算机原理,网络……2,零基础也能学软件测试,并不代表,零基础能学好软件测试。软件测试并不是很低级或是很简单的行业。对个人的计算机基础能力和综合能力都是有要求的。在想要学习软件测试之前,我建议朋友们先复习巩固计算机的基础

软件测试需要学什么 给想要学习软件测试同学们的建议

知识,若非计算机专业的,那就更需要好好补习这些基础知识了。[www.61k.com]最后的重申:凡事靠的还是自己。参加培训前,要详细了解培训机构的各方面情况再做选择。

二 : 为什么网站项目只需测试5个用户

人们总是认为,用户测试是一个复杂且代价昂贵的事情。一个网站设计项目需要一个庞大的预算和长长的时间表。其实,可用性测试并非如大多数人认为的是浪费资源的事情。在你可承受的测试成本范围内,使用不超过5个用户,即可达到很好的测试效果。

最初的研究过程中,Tom Landauer 和我得出了一个 可用性测试方面的,关于测试人员的数量的公式:

假设一个可用性测试的测试人员数量为n,N为所有可用性测试发现的问题总数,L是单个测试人员的问题发现率。

N(1-(1-L)n)

我们发现,大多数项目的平均的问题发现率为31%。当 L=31%时,可以得到如下的图形:

当用户为零时,发现的问题数目是零,即“零用户零发现”。我们可以看到,第一个用户几乎发现的三分之一的设计的可用性的问题,和零发现截然不同。当我们看第二个用户的测试情况时,可以发现,有一部分问题是和第一个user重合的。人们之间的行为或发现有一定的差异,第二个user可以发现一些不同于第一个user的问题,有区别于第一个用户的新发现,但是问题数量不及第一个用户的最初发现。第三个用户做了很多前两者重复的事情,有些甚至重复2次。另外,当然,第三个用户本身异能发现少量的新问题,显然数量远远不及前 两个用户。

现在,加入更多的测试人员(user),你会发现一个现象,随着人数的增加,重复的事情一再出现,发现的新问题发现率开始下降。显然不再需要让更多的人来重复发现重复的问题,自然回回去重新设计,以解决发现问题。

到了第5个user,你就是在浪费时间,去做重复的事情,并且几乎再没有先的发现。

迭代设计

上图中的曲线很清除地标明,至少需要15个用户去发现所有的设计中的可用性问题。但是,为什么我更倾向于推荐用更少的测试人员呢?一个主要的原因是合理分配可用性测试的预算。让我们看看,当你招聘15个客户代表来对你的设计进行测试时,就一位着你得花费5个用户的3倍的费用!

当我们去做用户的可用性测试时,最终的目标是为了解决或者提高实际的设计,而不是仅仅得到一份书面的报告。当5个用户的首次测试发现了85%的可用性问题时,你已经可以在下一个desagn中修复这些问题。

如果想发现更多的问题,当然需要再次测试。即使我说重新设计可以修复第一次测试时发现的问题,事实是你可能认为新的设计可以客服已有的问题。但是,在没有人能设计出更完美的用户界面之前,无法保证新的设计可以修复事实存在的问题。第二次测试可以回归已有的问题,确认是否修复。同时,一个新的设计,意味着还需要一次新的用户测试。

5个用户的第二次测试,可以发现第一次测试时遗留的15%的问题。(仍旧会有2%的问题遗留要等到第三次测试来发现)。

最终,第二次测试的深度可以设计到网站的设计架构,获取到我们所需的一些信息,如体系架构、任务流程等是否符合客户需求。这些问题常常在隐藏在一些表面的可用性问题之后,而为人们所忽略。

所以,第二次的测试作为第一次测试的质量保障,并且可以发现更深入的问题。第二次测试会为系统的重新设计提供一份新的问题清单,但数量显然会少于第一次测试。但是,本次测试并不能完全补充第一次测试,还需要第三次的测试来进行查漏补缺。

5个用户三次的最终测试效果要远高于15个用户测试一次的效果。

为什么不建议单用户的测试?单个人的行为总会有一些风险,人总会有一些意外的,不确定的行为。

你可能会认为15个用户做一轮测试,比5个用户做3轮要好。因为曲线表明,第一个用户的发现率明显高于后续的用户,但是,为什么我们要坚持多轮测试?两个原因:第一,通过观察3个人就可以看到用户行为的多样性,可以洞察到那些行为是独特的那些是可以一概而论的;第二,用户测试的成本效益分析表明,3-5个测试用户的最佳比例,依赖于测试的风格。初始的运行成本和测试计划相关,多个用户对于降低最初的成本效果更好。

什么时候增加更多的测试用户

当你的网站客户群覆盖到几个不同高度的用户群时,你需要增加更多的测试用户。上面公式的适用于网站的用户群接近或者差异很小时。举个例子,当你的网站客户群是定位于父母和孩子时,你就需要充分考虑到两个不同群里的使用行为。系统的相同之处是对于采购代理商的销售人员之间的连接。

甚至当用户群体差异性完全不同时,在两类人之间也可发现很多相似之处。毕竟,所有的用户都是人。所有的可用性问题反应的都是人的行为与网站之间的互动和影响。

在测试不同的用户群时,你不需要每个用户群中都有很多测试人员(user),有以下的一个测试人员数目就足够了:1、如果测试两个用户群,则每类群需要3-4个用户;2、如果测试3个或更多的用户群,则每类有3个测试用户就可以了(至少3个users就可以确保你覆盖到某一个用户群中的不同的行为)

参考:Nielsen, Jakob, and Landauer, Thomas K.: “A mathematical model of the finding of usability problems,” Proceedings of ACM INTERCHI‘93 Conference (Amsterdam, The Netherlands, 24-29 April 1993), pp. 206-213.

本文编译自舒心,原文地址。 

译文作者:Jakob Nielsen 译文地址:useit.com

三 : 需要一个精致的动态网页?试试微软的Sway吧

动态网页 网站建设 微软公司 微软Sway

同样的内容,做成微信邀请函的样式,展示效果八成会好于普通网页。这就是排版和动画效果的魅力。现在微软也出了一款名为Sway的应用,帮你把自己的故事以一种更精致的方式呈现给观众。

动态网页 网站建设 微软公司 微软Sway

在iOS版Sway上,除了查看一些其他用户已经制作好的内容,你也创建自己的Sway。在编辑页面,用户可以选择插入图片、拍照、添加文本块和添加标题这几类操作。完成之后,通过预览选项可以查看这个Sway在其他用户那里显示的效果。当然,如果觉得不够漂亮也可以从Sway提供的模板中重新选择那些你喜欢的效果。

动态网页 网站建设 微软公司 微软Sway

除了移动应用之外,你一样可以在网页上制作Sway。无论是传统的PC还是新式的iPad,从微软提供的演示视频中可以看出,它们都可以创建新的Sway,而且提供的功能更加丰富,像图表和柱状图之类的一样可以插入到Sway中。

在一个Sway制作完成之后,你即可以把它分享给朋友也可以把它嵌入在普通的网页上。由于Sway会自适应各种设备,所以你并不用担心自己的作品在别人的设备上会变得面目全非。

看完这些图片之后,或许你也想编辑一个自己的故事。不过由于Sway的iOS应用现在仅提供给新西兰地区的用户试用,而且网页版也需要邀请码才可以注册,所以你可能还需要等一等。微软表示他们现在仍然在继续为Sway增加功能,比如像加入更多的模板,所以在功能完善之后,自然会向公众开放。

在Sway的官网上,微软展示了12款使用Sway制作的故事,它们大多是文字和图片的混合体并且伴随着一定的动画效果。如果你曾经使用过Google+上的Stories功能,Sway的理念和它其实是有些类似的。只是前者更关注照片的展示,后者更看中故事的表现。

其实,无论是国内的微信邀请函自动生成工具,还是Sway、Google+ Stories这样的产品,它们都是想让用户以更精致的方式呈现内容。在看惯了从上往下翻滚的网页之后,用户也希望看到新的表现形式。

注:相关网站建设技巧阅读请移步到建站教程频道。

四 : 学习软件测试要学习些什么知识

学习软件测试要学习些什么知识 [资格考试 ] 收藏

悬赏点数 10 该提问已被关闭 7个回答

广东过客 2009-02-22 17:46:50 121.34.26.* 学习软件测试要学习些什么知识

软件测试需要学什么 学习软件测试要学习些什么知识

最佳答案

一个人的小门 2009-02-22 17:47:13 61.51.90.*

软件测试的一些基本要求

适合阅读人群:刚刚从事软件测试或者在考虑是否要进入这一行的朋友

摘要:软件测试的基本要求是:首先,要有宽泛的计算机基础知识;其次,要掌握一门编程语言;再次,学好英语。[www.61k.com)另外,从“软”的方面来说,要锻炼出一双测试的眼睛和保持平和的心态。

声明:个人观点,仅供参考

有些事情说起来有些滑稽,几年前, 们说,软件测试业在中国刚刚起步。现在, 们还是在说,软件测试业还是刚刚起步。几年的时间,对于其它行业是一个什么概念 不清楚,对于it行业来讲,不是一个小数。实际上,国内软件业的发展缓慢限制了测试业的发展,没有软件的开发计划,测试的需求不旺啊。然而,反过来想,在软件测试业还没有大红大紫的时候介入进去,应该是个好时候。

那么,从事软件测试业的基本要求是什么? 根据自己的体会,罗列一些,供朋友们参考。

首先,要有宽泛的计算机基础知识。微机原理,数据结构,数据库,操作系统原理,编译原理,逻辑,编程语言,网络,等等,都要系统地学习过。都精通不大可能,因为人的兴趣都不相同,但是,这些功课的基本知识点是应当了解的。 们在谈到职业的类别的时候, 们可以说c程序员,c#程序员,java程序员,而没有c测试员,c#测试员,java测试员,程序员可以只擅长某一门编程语言,测试员却不行。为什么呢?测试员是代表用户的,在做测试的时候,他(她)需要考虑到方方面面的事情。例如对于一个用c写的上网拨号程序,测试员需要考虑:

(1) 程序的功能是否正确;(要求计算机知识)

软件测试需要学什么 学习软件测试要学习些什么知识

(2) 是否符合用户的使用习惯;(要求界面设计知识和换位思考能力)

(3) 性能是否满足要求,例如长时间使用;稳定性;(要求深入的计算机知识)

(4) 是否能够满足用户可能的不同操作系统的要求;(要求计算机知识)

(5) 如果在全球发布,是否满足不同语言和文化的需求;(要求软件国际化测试知识)

(6) 如何搭建测试环境;(动手能力,硬件知识)

(7) 做代码检查;(比较深入的c语言知识)

(8) …

所以,各方面都了解一点,你在做测试的过程当中你会感觉顺手的多。[www.61k.com]如果某写方面还差一些,没有关系,计算机行业的特点就是边做边学,只要是个有心人,学习是很快的。

其次,要掌握一门编程语言。有的朋友可能会说, 就是不愿意做编程才来做测试的,怎么测试还有这么一个要求? 要尝试说服你:)。 的理由有两个:

1. 只有知道怎么做一个软件产品,才能真正懂得这个产品。而只有真正懂得了产品,才能做好测试。一行代码不会,你会始终是个门外汉。不要满足于点鼠标,而去尝试着打开 们面前的黑盒子。

2. 自动化测试技术需要编程技术。自动化测试是软件测试的一个发展方向,一方面很多测试工具都需要人工干预,编写代码;另一方面在有的情况下需要自己编写测试工具。

对于测试员来说,编程技术不要求精通,但要会。

再次,学好英语。在现阶段, 们只能承认,在计算机方面,英语国家领先。有很多的资料都是英语的,如果仅仅局限在中文资料方面,会影响你的渊博程度:)。举一个简单的例子,windows操作系统会捕捉到一些程序或者操作系统内部的异常,你可以根据这个异常到微软网站上去查找错误原因和解决办法,其中有很大一部分资料就是英文的,因为还没有翻译过来或者以后也不会翻译的。

软件测试需要学什么 学习软件测试要学习些什么知识

以上所说的几点看法,都是在计算机行业里面打转,下面说几个“虚”的要求吧。(www.61k.com)

1. 锻炼出一双测试的眼睛。 的一个朋友,她也是做软件测试的,她说,有一次她和她老公去买笔记本电脑,她一眼就看出液晶屏上有几个坏点,而她老公却看不出来。她说,这要归功于她有一双测试的眼睛。测试的眼睛,就是对问题特别敏感,能够发现常人发现不了的问题。测试员就是要找软件中的问题,有了这双眼睛会让你收益非浅。耐心,细心和经验,会有助于 们到达这个要求。

2.平和的心态。从心理学上说,每个人都不喜欢别人对自己挑毛病,程序员也是这样。所以,要以平和的心态去看待发现的软件问题,以平和的心态去和程序员交流。千万不要以为自己发现了几个问题,就可以责怪程序员,或者冲过去骂他们一顿。也不要在背后谈论谁谁谁不行,bug太多。一个项目是大家共同做的,需要举集体之力才能做完。 们测试员发现的问题多,表明项目的风险又少了一点,应该高兴才是。如果你的脾气不好,可能这个恶名会掩盖你的真才实学,很可惜的。

软件测试需要了解的知识

陆宏杰,微软资深专家顾问,信息产业部资深测试技术专家,曾于微软亚洲工程院工作,多年的软件开发、软件测试和测试团队管理经验,曾主管过多个大型复杂项目的测试工作,尤其在自动化测试技术和测试管理方面积累了大量的实际项目经验。对于各种测试方法的重点、难点和实施技巧有深入的研究。精通内核空间程序设计,熟悉微软 .NET 开发。其主持开发和测试的项目多次在信息产业部获得部级奖励。

软件构架师的培训注重素质和能力的培养。我们旨在帮助软件企业完善软件开发流程,改善软件开发质量和效率并提升企业的整体竞争力。

课程目标:

1、从软件产品生命周期入手,澄清测试基本概念, 分析各产品生命周期里程碑阶段中,软件测试人员的基本职责。

2、解释有关编写测试计划、测试规范、测试用例和缺陷报告的注意事项。

3、分析常用测试方法、测试策略和测试项目的管理。

61阅读/ www.61k.net

4、分析微软测试实践。其中包括为什么微软非常重视测试?微软测试部门的特点,微软的测试人员职业生涯发展方向和微软的企业文化。

功能测试、性能测试、安全性测试等全面测试活动,从而彻底保证软件的质量

课程说明

软件测试需要学什么 学习软件测试要学习些什么知识

1.软件测试基础理论 (1)软件测试与软件质量 (2)软件测试目的 (3)软件测试原则的建立 (4)软件测试对象 (5)软件测试的存在阶段 (6)缺陷和 BUG (7)缺陷的分类 (8)软件风险的概念 (9)测试的充分性准则

2.测试用例设计方法 (1)等价类划分法 (2)边界值分析法 (3)测试推测法 (4)场景法

(5)测试方法的综合策略 (6)Bug管理

(7)Bug和测试用例的关联 (8)缺陷的生命期

3.测试计划

(1)测试大纲的制定策略 (2)制定测试计划的重点和难点 (3)测试报告需要包含的信息量 (5)测试规格说明书 (6)范围界定 (7)测试目标 (8)风险评估 (9)假定和局限 (11)被测对象特性描述 (12)界定发布标准 (13)被测对象的验证方法 (14)通用方法/工具 (15)拓扑逻辑覆盖

4.微软Visual Studio集成测试工具的应用 (1)使用Visual Studio进行白盒自动化测试

5.测试方法及技巧 (1)功能测试 (2)黑盒/白盒测试 (3)安全性测试

(4)Help、手册和文档的测试 (5)International Sufficiency (Globalization/localization) (6)可用性测试 (7)可扩展性测试

(8)Geo/Political/Legal的测试方法 (9)Logging/ Message format Tracing/Counters( Diagnos ability) (10)Testability的评估

(11)Test Hooks高级测试方法 (12)基于场景的测试 (13)可靠性/耐久性测试 (14)集成测试 (15)交互性测试 (16)兼容性测试 (17)UE测试

(18)性能测试的方法和要点 (19)Benchmark

(21)性能测试和压力测试的区别 (22)压力测试的难点和技巧 (23)对系统的压力测试 (24)对界面的压力测试

(25)使用工具进行性能测试和压力测试

(4)如何组织和管理需求文档、设计文档和测试文档 (20)压力测试

案例分析:

(1)分析开源CRM项目的测试方案 (2)对于软件外包企业实施测试的方案分析

软件测试需要学什么 学习软件测试要学习些什么知识

1.上述测试方法在项目中的实战应用 (1)多种测试方法的结合 (2)测试活动的优先级的

(3)每一种测试方法的难点和实施技巧 (4)如何选择测试工具 (5)怎样提高测试效率

5.测试管理

(1)Bug数是否衡量开发人员水平的标尺? (2)Bug的分类和优先级 (3)产品Bug和测试Bug (4)解决Bug的时间要求 (5)测试团队和其他团队的配合 (6)周期性测试活动安排 (7)测试人员的考评标准 (8)测试纪律的制定策略 (9)质量文化 (10)质量文化 (11)目标工作制 (12)限时完成

(13)数据统计和数据挖掘

(14)如何制定项目计划,包括开发计划和测试计划

(15)合理的里程碑及里程碑之间的工作计划 (16)长期计划、中期计划、短期计划 (17)对不可预见因素的预判能力 (18)Guideline和CheckList

(19)在项目进度要求很紧的情况下如何保证测试的质量和完备性

2. 自动化测试技术

(1)自动化测试技术的原理和基础 (2)什么是自动化测试

(3)自动化测试对Bug控制力度 (4)多种自动化测试工具的分析 (5)自动化测试的运行

3.自动化测试高级技术及应用 (1)数据驱动的测试

(2)核心功能的自动化测试标准 (3)Pass Rate (4)代码覆盖率检查 (5)自动化测试的缺陷跟踪

(6)GUI测试自动化的难点和解决方法 (7)自动化测试的自动化

4. 与其他软件工程方法的结合

(1)测试活动在软件生命周期中不是孤立存在的 (2)与配置管理尤其是版本管理的结合 (3)Daily Build和分支管理 (4)与变更管理的结合 (5)与需求管理的结合

案例分析:

(1)基于微软Visual Studio进行自动化测试 (2)基于企业级办公应用软件项目进行全方位测试实施

本文标题:软件测试需要学什么-给想要学习软件测试同学们的建议
本文地址: http://www.61k.com/1125517.html

61阅读| 精彩专题| 最新文章| 热门文章| 苏ICP备13036349号-1