学习软件测试需要什么基础知识和能力?

2020-09-09 15:07发布

7条回答
我是大脸猫
2楼 · 2020-09-09 16:55

首先你要学习包括:软件测试基础(测试工作基本原则)、软件测试管理、软件测试工具、缺陷管理(缺陷的分类)、测试方法、测试策略 其次是文档:测试计划、测试用例、测试报告(单元、集成、系统)、缺陷报告。 再次:版本测试工具(svn),缺陷管理工具QC…… 鲁德告诉您还要了解一些测试根据:QTP、loadrunner……


一、软件测试员自身素质培养

(1)

 

首先,应对软件测试感兴趣和对自己有自信,如果具备了这两点,那么在开发过程中不管遇到什么样的困难,我相信你一定能克服。


(2)

 

善于怀疑,世界上没有绝对正确的,总有错误的地方,具有叛逆心理,别人认为不可能发生的事,我却认为可能发生。别人认为是对的,我却认为不是对的。


(3) 打破砂锅问到底的精神,对于只出现过一次的bug,一定找出原因,不解决誓不罢休。

(4) 保持一个良好的心情,否则可能无法把测试作好。不要把生活中的不愉快的情绪带到工作中来。

(5) 做测试时要细心,不是所有的bug都能很容易的找出,一定要细心才能找出这些bug。

(6) 灵活一些,聪明一点,多制造一些容易产生bug的例子。

(7) 在有条件的情况下,多和客户沟通,他们身上有你所需要的。

(8) 设身处地为客户着想,从他们的角度去测试系统。

(9)

 

不要让程序员,以“这种情况不可能发生”这句话说服你,相反,你应该去说服他,告诉他在客户心里,并不是这样的。


(10) 考虑问题要全面,结合客户的需求、业务的流程、和系统的构架,等多方面考虑问题。

(11)

 

提出问题不要复杂化,这一点和前面的有点矛盾,如果你是一新手,暂时不要管这一点,因为最终将有你的小组成员讨论解决。


(12)

 

追求完美,对于新测试员来说,努力的追求完美,这对你很好,尽管有些事无法做到,但你应该去尝试。


(13)

 

幽默感,能和开发小组很好的沟通是关键,试着给你的开发小组找一个“BUG杀手”,或对他们说“我简直不敢相信,你写的程序居然到现在没有找到BUG”。


(14)

 

到此是不是对测试很有兴趣呢?不过我要告诉你,测试过程中有酸甜苦辣,其中的滋味只有你知道,也许你会感到枯燥,要学会放松自己,去溜冰或做你喜欢做的事,不过,别放弃,因为你的自信告诉过你“你会是很优秀的测试员”不是吗?



二、浅谈软件测试之技巧


软件测试虽然辛苦,但是掌握了一定的技巧之后将使你事半功倍。

(1) 边界测试,测试用户输入框中的数值的最大数和最小数,以及为空时的情况。

(2) 非法测试,例如在输入数字的地方输入字母。

(3) 跟踪测试,跟踪一条数据的流程,保证数据的正确性。

(4) 在开始测试时应保证数据的正确性,然后在从系统中找出各种BUG。

(5) 接口测试,程序往往在接口的地方很容易发生错误,要在此模块测试勿掉以轻心。

(6)

 

代码重用测试,在开发过程中有些模块功能几乎相同,程序员在重用代码时可能忘记在原有代码上修改或修改不全面,而造成的错误。


(7) 突发事件测试,服务器上可能发生意外情况的测试。

(8) 外界环境测试,有些系统在开发时依赖于另外一个系统,当另外一个系统发生错误时,

 

这个系统所受到的影响的情况。


(9)

 

在程序员刚修复Bug之后的地方,再找一找,往往程序员只修复报告出来的缺陷而不去考虑别的功能在修改时可能会重新造成错误。


(10)

 

认真做好测试记录在做完一天的测试记录之后,第二天再根据第一天的测试记录重复测试你会发现有未修正的错误。


(11) 文字测试,如果在系统中有用词不当的地方,我想这是不应该的。

(12)

 

系统兼容测试,例如有些程序在IE6能运行正常,到IE5下不能运行。有些程序在WIN2000下能运行,而到WIN98却不能运行。像一些很特别的用户去使用系统,你很有可能发现BUG。


(13)

 

用户的易用性测试,往往用户的需求是不断的变化的,而其中的一部份变化的原因,是有用户操作上不方便引起的。


苏橙C
3楼 · 2020-09-09 21:04

会写测试用例,有一定的想法

4楼 · 2020-09-09 23:06

软件测试大致分为黑盒测试和白盒测试,黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试,黑盒测试一般不需要软件开发基础,只需要掌握基本的软件测试理论,比较注重后期的经验积累,入门也较容易,很多非计算机相关专业的朋友转行做测试以后也基本以功能测试为主。

白盒测试需要具备开发的基础,因为涉及的到代码的走查,现在国内做白盒测试的人要远远少于黑盒测试,白盒测试工程师很多都是软件开发工程师转软过来的。

软件测试的另一个分类方法是分为功能测试和性能测试,功能测试基本上就是黑盒测试,性能测试需要涉及到系统瓶颈的定位和调优,一般需要掌握数据库知识,最好会一门脚本语言,如JAVA或C。

综上,想从事软件测试,首先要掌握软件测试的基本理论,最好会数据库的基本操作,最好会一门脚本语言。其实软件测试的基本理论比较容易,现在各种资料也很多。数据库的基本操作,一般是增删改查备份还原等。

香司机
5楼 · 2020-09-10 10:10

软件测试分为功能测试、接口测试、自动化测试、性能测试几大方向,每个方向用到的测试工具都不尽相同。功能测试会用到SVN、禅道、QC\ALM、Jira等软件测试管理工具。接口测试则会用到Jmeter、Postman、Fiddler软件,使用Jmeter可以执行测试用例,对页面跳转,参数传递等功能进验证。

自动化测试则又分为Web自动化测试和移动自动化测试。Web自动化测试主要会用到Selenium软件以及Firebug插件工具,使用Selenium可以对网站的核心功能进行自动化测试,包括元素定位、鼠标键盘的模拟操作及自动化测试框架的使用等。Web自动化测试主要用到的是Appium以及Monkey软件。Appium可以对APP核心功能进行测试验证,包括ID、xpath、list元素定位,数据交互、模块封装以及自动化测试框架的使用,生成测试报告,对APP功能进行评估等。

性能测试则会用到Loadrunner软件,它包含VuGen、Controller、Analysis 这些组件。VuGen用于协议、参数化、集合点、事务、检查点、思考时间、关联、文件下载、浏览器模拟设置。Controller用于手动场景设计、场景运行、IP Wizard应用、负载生成器、服务水平协议(SLA)、场景监控、服务器硬件监测。Analysis则用于HTTP报文结构、吞吐量相关、事务相关、网页细分图、执行结果分析、图表分析。

三岁奶猫
6楼 · 2020-09-10 13:23

软件测试(英语:Software Testing),是描述一种用来促进鉴定软件的正确性、完整性、安全性和质量的过程。软件测试是一种实际输出与预期输出之间的审核或者比较过程。软件测试的经典定义是:在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。

软件测试主要学习功能测试、自动化测试、接口测试、性能测试,这些又是什么呢?简单来说就是:

1、功能测试:功能测试就是对产品的各功能进行验证,根据功能测试用例,逐项测试,检查产品是否达到用户要求的功能

2、自动化测试:一般是指软件测试的自动化,软件测试就是在预设条件下运行系统或应用程序,评估运行结果,预先条件应包括正常条件和异常条件。

3、接口测试:接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。

4、性能测试:性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。


香蕉牛油果酸奶
7楼 · 2020-09-10 14:38

测试入门比较简单,要求不是很多,主要还是看个人自己的喜好程度的

相关问题推荐

  • 回答 157

    虽然从事开发行业的女生越来越多,但女生的比例还是远比不上男生。软件测试的男女生比例则基本相当,软件测试要求细心、耐心,大部分女生也是比较适合学的。而且软件测试课程分为手工测试和自动化测试,手工测试分为功能测试、性能测试、接口测试。自动化测试...

  • 回答 121

    需要。很多人当初抱着测试不需要懂代码,才选择了这个行业,这个就要看对自己的职业定位了,是止步于月薪过万就可以了,还是往20k、30k去突破,如果这样的话,是肯定要会接口、会自动化,就必然要涉及到代码。如果真的看不懂代码,实际的测试后期的工作会出现...

  • 回答 91

    在我看来游戏开发挺难的,尤其像手游一类的还有网游,里面有很多的程序代码而且伤神又费力,不过也有女生在这方面做的很好的,如果你感兴趣,非常想学,可以试试

  • 回答 80

    软件测试专业现在很火热,很缺少人才,25岁学软件测试能学会,就业薪资也高,工作也相对轻松

  • 回答 11
    已采纳

    测试类型有:功能测试,性能测试,界面测试。功能测试在测试工作中占的比例最大,功能测试也叫黑盒测试。是把测试对象看作一个黑盒子。利用黑盒测试法进行动态测试时,需要测试软件产品的功能,不需测试软件产品的内部结构和处理过程。采用黑盒技术设计测试用...

  • 回答 15
    已采纳

    这个其实和接口测试的场景密不可分的,比如说:外部接口测试:    必须先接口测试通过了,才能执行功能测试子系统或者各个模块之间的联调测试:    必须各子系统后台代码完成,并提供接口才可以完成测试,一般来说都要求各子系统功能测试通过后再进行...

  • 回答 6
    已采纳

    这个是会因为公司的架构不同而不同的,并不是固定的,但是一般是会有专门的测试部门,或者叫质量保证部,也有可能是叫别的名字。

  • 回答 43
    已采纳

    移动端测试,包括App兼容性测dao试,7*24小时稳定性测试,功耗性能测试,UI测试,交互测试等,课程主要学习的内容有:1、功能测试主要包括计算机基础、软件测试核心理论、Linux、数据库,学习目标是掌握软件测试核心理论,结合Linux、数据库等可实现移动端、w...

  • 回答 1

    标题  1. 首先要做一个标题党(此标题党非彼标题党)。标题一定要清晰简洁易理解,不应该臃长  2. 尽量前缀要规范,例如模板: [Product][Version]_[Feature]_[Title],这样描述会很清晰,也方便查找  3. 缺陷的标题一定要描述在什么情况下发生了什么问...

  • 回答 1

    1、 缺陷报告可以记录缺陷2、可以对缺陷进行跟踪管理3、可以对缺陷报告进行分类 总结 统计

  • 回答 1

    1、缺陷编号(Defect ID),提交BUG的顺序。2、缺陷标题(summary),简明扼要的说明一下这个BUG。3、缺陷的发现者(DetectedBy) ,一般是自己。4、发现缺陷的日期(Detected on date),一般是当天。5、缺陷所属的模块(subject), 在测试哪个模块的时候发现的BUG...

  • 回答 1

    缺陷标题好的缺陷标题需要让相关人员一目了然,一般建议的格式是条件+失败。缺陷类型缺陷类型也是根据具体的项目而定的。但一般情况下分为功能、界面、建议。重现步骤重现步骤的编写规则可以参考测试用例中的操作步骤 ,一定要足够详细、说明清楚问题的操作顺...

  • 回答 1

    工具:NoSQLUnitJsTestDriverQTRunnerVenusFluintBuster.JSSQLUnitECUTQTestlibUnitilsgreatestDbUnitAbbotGoogleTest框架:JUnitMoqJSCaptureMockCUnitPyUnitCppUTestCppUnitzCUTcipra

  • 回答 1

    JunitTestNGGoogleTestpytestunittestJmockitJaCoCogcov、lcov、gcovrCoverage.pyEvoSuiteDiffblue Cover

  • 回答 1

      React Hooks测试库( Testing Library)是一个简单而完整的React Hooks测试工具。  React Hooks测试库让用户可以为React钩子创建简单的测试工具,自定义钩子的输入和检索输出,以处理在功能组件体内运行的情况。  使用React Hooks,用户不必为了测试而去担...

  • 回答 1

    1、单元测试注重代码逻辑,接口测试注重业务逻辑;2、单元测试的粒度最小,是测试最小独立的单元模块(不依赖其他模块);接口测试不是,会覆盖很多;3、单元测试是白盒测试,接口测试是黑盒测试;4、单元测试关注的是代码的实现和逻辑,测试范围较小,保证实...

没有解决我的问题,去提问