零基础转行学习软件测试如何入手? 我想打听一下天津和济南这两个地方做软件测

我根据自己入门测试的经验分享一下哈。 可以看的书有这些: 比较推荐的有《软件测试》\n 软件测试 (豆瓣) 软件测试 (豆瓣) 这本书的作者是Ron Patton,讲到的内容比较宽泛...

零基础转行学习软件测试如何入手?

我们精选了一下网友答案:

···································^^····································


我根据自己入门测试的经验分享一下哈。

可以看的书有这些:
比较推荐的有《软件测试》\n
软件测试 (豆瓣)
软件测试 (豆瓣)
这本书的作者是Ron Patton,讲到的内容比较宽泛,包括测试理论、测试流程、Bug管理、兼容性测试、自动化测试等各个方面,通过这本书,我快速地了解软件测试是一个什么样的工作,测试人员要做哪些事情。\n

另外还有一本《软件测试》\n
软件测试 (豆瓣)
作者是paul c.jorgensen,我也看了,但是内容相对来说比较理论化,翻译也比较晦涩,不推荐新手作为入门教材。\n

测试人员还需要对软件开发、数据库、操作系统有所理解。推荐的书有:

《深入浅出Java》
Head First Java(第二版·中文版) (豆瓣)
这本书的作者是Kathy Sierra,很厚的一本,但是却写得很风趣,很容易理解,也能比较快地看完,这本书对于Java的入门是一个很好的选择。\n

Python在线教程
Python 2.7教程
写得挺不错的,Python和Java选择一门学习就可以啦。

《Python基础教程》
《Python基础教程(第2版 修订版)》([挪]Magnus Lie Hetland)【摘要 书评 试读】
如果想要看书,这本书是比较推荐的。

《Java编程思想》
Java编程思想 (豆瓣)
我当初是先看了《Java编程思想》这本经典书的,然后才看到《深入浅出Java》,发现还是《深入浅出Java》写的比较浅显,内容也比较少,对于新手来说,我建议《深入浅出Java》就够了,不要从这本书开始。\n

《鸟哥的Linux私房菜.基础学习篇(第三版)》\n
鸟哥的Linux私房菜.基础学习篇(第三版) (豆瓣)
测试环境部署需要linux的知识,现在我们公司的新人们更多的还是看《鸟哥的Linux私房菜.基础学习篇(第三版)》作为Linux的入门。众人的选择总是没错的,所以推荐你看这本。\n

除了看书,我也会从网上获得各种资料,比如,关于HTTP协议、HTML、XML语言等,对于这类测试人员需要了解的,但是并不需要精通的技术,从网上搜集资料,自己能理解基本原理就行了。+++

题主问的泛泛,也不知道题主现在是在职还是离职,更不知道题主之前从事的行业跟软测关系如何,跟IT关系如何,所以到底是自学还是报班,亦或是请熟人带,都不好讲。

不过还是先说说心态吧。不论做什么,心态都很重要(不是最重要而是很重要,毕竟我也是借隔壁文科班妹子的政治书第四册看过的人^_^)。

一个来说,必须有一个良好的学习心态。学习任何知识贵在坚持,如果半途中止,学不好任何东西。

再一个,不懂就要问。学习很忌讳不懂装懂,朋友,老师,网络,都是可以用来搜索答案和提问的地方。子曰:“知之为知之,不知为不知,是知也。”不懂装懂很难自我提升。

然后说说行业吧。

软测行业内部,也是有分层的,最赚钱的,比如说性能测试,这个收入一般就比较让人羡慕了。比较赚钱的,比如白盒,再比如自动化,这都是相对高端的。

手工黑盒做三年,这时候一般都是瓶颈期。

有一些人能够感觉到自己的瓶颈,有些人感觉不到。

感觉到自己瓶颈期的人会选择各种各样的突破方式,有的自学一门语言,打算学点儿开发知识;有的学数据库知识,打算往DBA发展;有的学系统学部署,做部署工程师;有的学习自动化工具,性能的啊,功能的啊,希望变成自动化工程师。

这些是不打算做手工测试了,我们祝他们好运。

继续坚持手工测试呢,有些人就开始转管理了,做组长,做经理,这样;有些人学业务,成为业务专家。

所以说即使要入门软测,选择什么也是颇有讲究的。

想好方向,再想方法。

然后题主再根据自身情况,考虑一下到底是报班还是自学。

我有份视频,是教基础的。你可以看看 软件测试教学视频-

+++

一、想要零基础学好软件测试,当然需要对测试有一个良好的认知。

  1、什么是软件测试?

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

  2、怎样才算一个真正的软件测试工程师?

  真正的软件测试工程师算是半个产品经理,半个开发工程师。有人觉得这个标题有点讽刺,真正的测试?难道我们不是真正的测试,平常做的都不是测试的工作吗?其实不肯定也不否定,但这是一个包含关系,如果只是评审+用例编写执行,那么确实不是一个真正的测试。

  正如标题那样,我认为真正的测试 =“半个产品+半个开发”。

  半个产品,主要体现在理解这个需求为什么要做?其核心价值在哪里?吸引用户的特点是什么?意味着在评审阶段,你除了帮助完善功能需求外,更重要的是理解这个需求对于用户有什么价值,你是用户你会怎么想有什么感受,不能简单的走完流程就可以了,比如一个播放视频类应用, 多样性 流畅度 简易性 快速性等 这是在评审之后可以总结出来的,那么抱着这个价值点,围绕这我们的整个测试流程,往往能够发现不一样的地方。比如还是播放类应用,在我了解个特性后,在测试过程中我会更加留意播放方面的性能,以及兼容性,在我设计测试方案的时候就会标明这几个测试重点,以便我自己或者组员能够在测试过程中多加留意这部分的测试点,然后在设计测试用例的时候会提高优先级和覆盖率。可以发现,测试有了测重点。

  半个开发,其实个人认为这是偏向于灰盒测试了,体现在一个需求,你除了要明确这个需求的业务逻辑,其代码逻辑(数据流逻辑)也是需要知道的,从后台获取的json数据结构到客户端展示再到存储至本地数据,这一个流向,都是需要去了解并测试的(这部分参照之前写的测试分析文章),所以测试验证的不仅仅是功能层面的东西,还是内部的具体实现(当然,具体到类方法的测试那是测试开发的职能,不关咱测试的事),我们要保证的,就是这一阶段数据的正确性和容错性。这样做的好处是,能从内部发现缺陷,在出现问题的时候可以大概定位到问题出在哪,在出问题面对boss的质疑能够把责任丢给开发,哦不,是更好的解决问题。

  那么半个开发还体现在对工具效率的提升上,能够通过小脚本,小框架去提升测试效率,这要求对于基本的语言要求是必须的,大公司面试的某一轮考研的就是你的代码能力,所以测试还是半个开发这一点是毋庸置疑滴。

  1、测试项目启动与规划

  一般地,项目启动过程组包括两个过程:即制定项目章程和制定项目初步范围说明书;而项目规划过程组则会综合项目的成本、范围、时间、质量、风险、人力、沟通、采购等因素制定项目计划,该项目计划将用于指导项目的实际执行。

  对任一项目而言,有三个文件是非常重要的。即:项目章程、项目范围说明书,项目管理计划。这三个文件均产生于项目启动阶段和项目规划阶段。其中项目章程被认为是三大文件之首(项目章程、项目范围说明书,项目管理计划)。一个项目,不论大小,都应该有项目章程。

  一个典型的项目章程包括如下内容:

  1)项目名称及背景描述;

  2)项目经理任命及职责范围界定;

  3)项目业务需求描述;

  4)项目发起的原因;

  5)主要项目干系人及其初步需求;

  6)产品及预期交付成果描述;

  7)项目假设和约束条件。

  三、零基础如何学好软件测试,不懂测试方法怎能事半功倍?

  1、从测试设计方法分类

  Black box黑盒测试:把软件系统当作一个“黑箱”,无法了解或使用系统的内部结构及知识。从软件的行为,而不是内部结构出发来设计测试.

  White box白盒测试:设计者可以看到软件系统的内部结构,并且使用软件的内部知识来指导测试数据及方法的选择。

  Gray box. 灰盒测试:介于黑盒和白盒之间

  总结: 实际工作中,对系统的了解越多越好。目前大多数的测试人员都是做黑盒测试,很少有做白盒测试的。 因为白盒测试对软件测试人员的要求非常高,需要有很多编程经验。做.NET程序的白盒测试你要能看得懂.NET代码。做JAVA程序的测试,需要你能看懂JAVA的代码。 如果你都能看懂了,你还会做测试么

  2、从测试是手动还是自动上分类

  Manual Test 手动测试:测试人员用鼠标去手动测试 (测试GUI)

  Automation 自动化测试:用程序测试程序 (测试API)

  对于项目来说, 手动测试和自动化测试同等重要,都是保障软件质量的方法。 目前大部分的项目组都是手动测试和自动化测试相结合。因为很多测试无法做成自动化,很多复杂的业务逻辑也很难自动化, 所以自动化测试无法取代手动测试。

  对于软件测试人员个人发展来说, 做自动化测试是个挑战,也是测试人员发展的一个方向, 需要测试人员学习大量的开发知识(开发的知识真是学无止境啊)。 从长远角度来看,自动化测试肯定是越来越吃香的。

  而手动测试比较适合刚工作不久的人,手动测试最大的缺点就是技术含量低,单调乏味,容易废人。

  总的来说,手工测试胜在测试业务逻辑,而自动化测试胜在测试底层架构。

  如果被测试的程序可测试性比较好, 很有必要做成自动化测试。 能做自动化的尽量做成自动化, 下面这些情形是可以做自动化的:

  1) 测试存储过程。 例如用C#去测试存储过程

  2)测试Web servies. 例如: 用SoupUI工具,或者C#,Java 去测试Web servies。

  3)界面和业务逻辑分离的系统,比如,MVC,MVP架构, 或者WPF 程序。 可以用测试脚本去测试这些程序的API。

  3、从测试的目的分类

  功能测试

  测试的范围从小到大,从内到外, 从程序开发人员(单元测试)到测试人员,到一般用户Alpha/Beta测试

  Unit Test 单元测试:在最低的功能/参数上验证程序的准确性,比如测试一个函数的正确性(开发人员做的)

  Functional Test 功能测试:验证模块的功能 (测试人员做的)

  Integration Test 集成测试:验证几个互相有依赖关系的模块的功能 (测试人员做的)

  Scenario Test 场景测试:验证几个模块是否能完成一个用户场景 (测试人员做的)

  System Test 系统测试:对于整个系统功能的测试 (测试人员做的)

  Alpha 测试:软件测试人员在真实用户环境中对软件进行全面的测试 (测试人员做的)

  Beta 测试:真实的用户在真实的用户环境中进行的测试, 也叫公测 (最终用户做的)

  非功能测试

  一个软件除了基本功能之外,还有很多功能之外的特性,这些叫“Quality of Service requirement”服务质量需求。没有软件的功能,这些特性都无从表现出来,因此,我们要在软件开发的适当阶段-基本功能完成后做这些测试。

  Stress test 压力测试:验证软件在超过负载设计的情况下仍能返回正确的结果,没有崩溃

  Load test 负载测试:测试软件在负载情况下能否正常工作

  Performance test性能测试:测试软件的效能,是否提供满意的服务质量

  Accessibility test:软件辅助功能测试-测试软件是否向残疾用户提供足够的辅助功能

  Localization/Globalization:本地化/全球化测试

  Compatibility Test:兼容性测试

  Configuration Test:配置测试-测试软件在各种配置下能否正常工作

  Usability Test:可用性测试 –测试软件是否好用

  Security Test:软件安全性测试

  性能测试

  性能测试要求测试人员熟练性能测试工具,比如QTP, LoadRunner, Jmeter。 Visual Studio也提供了很多性能测试的工具. 要求测试人员对低层协议非常理解和编写脚本

  性能测试非常有技术含量, 很有发展前途, 是软件测试人员的一个职业发展方向。

  安全性测试

  安全性测试的内容很广, 非常有难度啊。 我只接触过XSS(跨站脚本攻击)和SQL注入攻击。

  安全性测试非常有技术含量, 我认为也是软件测试人员的一个职业发展方向

  4、按测试的时机和作用分类

  在开发软件的过程中,不少测试起着“烽火台”的作用,它们告诉我们软件开发的流程是否畅通。

  Smoke Test:“冒烟”–如果测试不通过,则不能进行下一步工作

  Build Verification Test(BVT):验证构建是否通过基本测试。

  Acceptance Test:验收测试,为了全面考核某功能/特性而做的测试

  BVT测试是一种Smoke Test, 指Build生成好之后,自动运行的自动化测试脚本来检查这个Build的基本功能。 如果BVT测试失败了,需要开发人员马上修改,重新生成Buil

  5、按测试测策略分类

  Regression Test 回归测试:对一个新的版本,重新运行以往的测试用例,看看新版本和已知的版本相比是否有退化 (regression)

  Ad hoc Test 探索性测试:随机进行的,探索性的测试。

  Santiy Test:粗略的测试, 只需要执行部分的测试用例

  Regression Test 回归测试:

  对软件测试人员来说就是重复测试,所以回归测试最好是自动化的,否则测试人员就要一遍又一遍地重复测试。

  1)开发人员做些小改动,就需要测试人员做回归测试。确保现有的功能没有被破坏;

  2)Bug Fix 也需要回归测试,确保新的代码修复了Fix, 也确保现有的功能没有被破坏;

  3) 项目后期,需要做一个完整回归测试, 确保所有的功能都是好的。

+++

对于零基础的小白来说,要想转行学习软件测试,首先需要确定自己是否适合转行入坑。

软件测试虽然入行门槛在IT技术岗位里算比较低的,但是还是有一些硬性或软性的要求。转行者可从以下几点来评估自己是否适合转行软件测试。

1、学历

转行者,以就业和发展为目的。

目前市场上,企业对软件测试者的学历要求是大专及大专以上,这也是汇智动力为啥不建议大专以下学历的小伙伴转行进入IT技术岗的原因。学历不够,即使学会了,在就业的时候也有一定的困难。

虽说学历≠能力,但是在软件测试岗位上,学历也算是用人单位的一个硬性要求,如果年龄不大,可以先考个学历证书,再入坑IT技术岗。

2、年龄

大龄转行并不是不行,但是要慎重!软件测试岗位属于技术性比较强的岗位,对于零基础的小白来说,要学习知识和技术还是很多。软件测试的技术更新虽不及软件开发那么快,但是随着物联网、人工智能的发展,技术更新的频率势必会增快,长期保持学习新技能是软件测试工程师的常态。

对于30几岁的人来说,要从零开始积累,在软件测试行业里相对有些困难。所以想转行软件测试岗位的朋友,也可以评估一下自己的精力和学习能力。

3、兴趣

对于自己不太了解的东西,可能谈兴趣有些突兀,但是如果不喜欢长期面对电脑,不喜欢一坐就是几个小时,反感代码的小伙伴还是趁早打消转行测试的念头。毕竟人生除了钱,还有心情!

如果对一件事保持莫大的激情,那么做好的概率会大大增加!

在确定了要转行软件测试之后,接着就需要选择学习的途径。途径并无好坏之分,只有适不适合个人,其最终目的都是为了掌握好相关的知识和技术。对于小白来说,常见学习的途径有自学和找培训班,汇智妹之前对这两种途径进行了对比分析,想了解的伙伴可以看看。

小白如何进入IT行业及如何选择培训机构

+++

只给鸡汤不给勺子的都是干瞪眼。同理,只给学习路径但是不提供配套学习视频的就是鸡汤文。

哈哈,得罪一大批测试大咖了。

开个玩笑。我这里不仅提供学习路径,还提供对应视频,而且是黑马上课的真实视频,大概50多天。系统,前沿,质量过硬。各位不想报班的同学门可以按照这个来自学哈。


----------------------------------------------------------------------

bbs.itheima.com/thread-405757-1-1.html?zhihuxhwlxt (二维码自动识别)

-----------------------软件测试视频第一阶段-前置基础知识配套视频----------



本阶段软件测试课程共计5个知识点,2个免费视频涵盖
1、学习目标:
可掌握的核心能力:
1. 熟悉计算机相关概念;
2. 掌握基础的测试理论;
3. 熟练掌握HTML常用标签和语法规范;
4. 掌握使用CSS定义网页样式;
5. 掌握js的基本用法;
2、知识点:
1)计算机基础
计算机组成部分、操作系统分类、B/S和C/S架构、常用DOS命令、服务器域名
2)测试理论
软件测试的目的、软件测试定义、软件测试原则、产品质量模型、测试基本流程
3)HTML基础
HTML基础语法、标签属性、图片标签、超链接、锚点、表单
4)CSS基础
CSS基础语法、CSS四类选择器、常用文字属性、行高属性、边框、盒子模型、内外边距
5)JS基础
JS基础语法、JS引入方式
3、该阶段免费配套视频
1)北京校区-《2019年视频告诉你测试行业薪资/价值/职业规划》 密码:xp9k(小白入门必看视频)
2)北京校区-《5天测试班基础视频教程2020版》[3.16日更新] 密码:crm2(对应上述1-5知识点)


------------------------软件测试视频篇第二阶段-linux和数据库-----------------------


本阶段软件测试课程共计4个知识点,共计4个免费配套视频涵盖
1、学习目标:
可掌握的核心能力:
1. 掌握Linux操作系统按照和配置;
2. 熟练掌握Linux常用命令;
3. 掌握数据库增删改查操作;
4. 熟悉数据库索引、视图、事务、常见函数等高级功能;
5. 掌握Redis的string类型、hash类型、set类型、list类型等基本类型和操作;
2、知识点:
1)LINUX(熟悉)
操作系统介绍、操作系统发展历史、CentOS图形界面、文件和目录、常用LINUX命令使用、vim文本编辑器的使用
2)数据库介绍(熟悉)
数据库基本概念、关系型数据库介绍、MySQL安装与使用、Navicat使用
3)SQL语言(重点)
数据表操作、数据操作-增删改查、条件查询、排序、聚合函数、分组、分页、连接查询、自关联、子查询、子查询演练
4)数据库高级功能(了解)
数据库设计、命令行操作数据库、函数、存储过程、视图、事务、索引、外键、用户密码
5)redis数据库功能(掌握)
掌握Redis的string类型、hash类型、set类型、list类型等基本类型和操作;
3、该阶段免费配套视频
1)北京校区-《2天linux视频教程完整分享2020版》 密码:hz1k(此免费视频对应上述1知识点)
2)北京校区- 《4天mysql视频教完整版分享2020版》 密码:s6p6(此免费视频对应上述2-4知识点)
3)实战视频-《1天redis实战视频教程2020版》 密码:o0wv (此免费视频对应上述 5 知识点)
4)实战视频-《Linux命令实战之Lnmp搭建禅道测试环境》 密码:wynj(2020年4月3日更新)


-----------------------软件测试视频第三阶段-前置基础知识配套视频--------------


本阶段软件测试课程共计6个知识点,共计6个免费配套视频涵盖
1、学习目标:
可掌握的核心能力:
1. 掌握测试的基本概念和测试常见分类;
2. 熟练掌握黑盒测试用例设计方法,进行功能测试用例设计;
3. 熟练掌握缺陷报告的编写;
4. 熟悉测试管理工具禅道和JIRA的使用
5. 掌握项目测试流程;
6. 掌握Web项目功能测试分析和用例编写;
7. 熟悉测试计划,测试方案,测试报告的核心内容
8. 掌握功能测试与数据库的关系
9. 掌握Fiddler工具的使用
2、知识点:
1)软件测试理论
软件测试的分类,软件开发模型和测试模型,软件的质量模型,测试用例的定义和要素
2)测试用例设计
等价类方法、边界值方法、因果图、判定表、状态迁移法、正交、场景
3)缺陷管理
缺陷定义、缺陷的判定标准、缺陷报告、缺陷跟踪流程
4)Web项目实战
搭建项目的测试环境,如何快速熟悉项目,项目的测试流程,测试计划和方案,功能测试分析,状态迁移法的使用,流程测试分析,非功能测试分析,测试报告编写,Fiddler抓包
5)测试管理工具
禅道的使用,JIRA的使用
3、该阶段免费配套视频
1)北京校区-《深入了解软件测试4天视频》 密码:hyv9(此免费视频对应上述1,2,3,4知识点)
2)北京校区-《4天学web手工项目测试》(19.6.20更新) 密码:vhh9(此免费视频对应上述6知识点)
3)北京校区-《2天学APP手工项目测试》(19.7.30更新) 密码:i6ym(此免费视频对应上述6知识点)
4 ) 北京校区-《1天禅道工具使用》(19.8.29日更新) 密码:u9vj (此免费视频对应上述7知识点)
5 ) 北京校区-《1天软件缺陷与JIRA》(19.8.29日更新) 密码:3za0(此免费视频对应上述7知识点)
6) 实战视频-《两小时快速入门黑马头条APP功能测试实战》 密码:9ziq


----------------------软件测试视频篇第四阶段-编程+数据结构-------------------


本阶段软件测试课程共计3个知识点,共计1个免费配套视频涵盖
1、学习目标:
可掌握的核心能力:
1. 掌握Python基础语法, 具备基础的编程能力;
2. 建立编程思维以及面向对象程序设计思想。
2、知识点:
1)Python开发环境
Python开发环境的搭建、Pycharm使用
2)Python基础
变量以及变量的类型、标识符和关键字、变量名命名方式、算数运算符、变量数据类型转换、输入和输出、注释、if语句基本格式、if…else…语句、if…elif..else语句、逻辑运算符、比较关系运算符、运算符优先级、while循环语法格式、while嵌套应用、break的用法、continue的用法、列表概念及操作、元组概念及操作、字典概念及操作、字符串概念及操作、集合概念及操作、for循环及for…else用法、函数的基本语法、函数执行流程、文档注释、带参数的函数、带返回值的函数、函数的嵌套调用、匿名函数、递归函数、局部变量和全局变量、引用、文件的概念、文件的打开与关闭、文件读写, 以及文件定位读写、文件、目录相关操作
3)面向对象
面向对象介绍、类和对象的概念、魔术方法的意义及作用、对象成员的访问控制权限、继承的概念及意义、继承、多层继承和多继承、多态的概念以及应用、类属性和实例属性、实例方法、类方法、静态方法、设计模式: 单例模式
4)异常处理
理解异常的作用、捕获异常、异常的传递规则、自定义异常
5)模块和包
模块和包的概念、__all__的用法、import语句用法、from...import...用法、from...import * 用法
3、该阶段免费配套视频
1)北京校区-《10天带你玩转python2020版》 4.20日更新 密码:daxr(此免费视频对应上述1 - 5知识点)
备注:python视频非常重要,是做市场最抢手的自动化测试必学视频,目前黑马已公开。


----------------------软件测试视频篇第五阶段-WEB自动化-------------------


本阶段软件测试课程共计5类知识点,合计6个免费视频涵盖(5个视频已经公布,一个正在紧张更新中)
1、学习目标:
可掌握的核心能力:
1.能够熟练搭建Web自动化测试环境;
2.熟练掌握元素的定位方法和元素操作;
3.掌握鼠标键盘操作及HTML特殊元素的处理;
4.掌握使用UnitTest管理自动化测试的脚本;
5.熟练掌握PO模式的设计思想,并能够对页面进行封装;
6.掌握数据驱动的实现方式;
7.掌握日志的相关概念,以及日志的收集处理;
8.掌握在实际的项目中如何灵活运用自动化的相关技术。
2、知识点:
1)WEB自动化入门
自动化测试的理论知识、主流的Web自动化测试框架介绍、Selenium的发展历史及工作原理、元素查看工具使用、环境搭建
2)WEB自动化基础
元素基础定位方法、Xpath和CSS元素定位方法、元素常见操作、浏览器操作方法、鼠标键盘操作、显示等待和隐式等待、HTML特殊元素处理、窗口截图、验证码处理
3)WEB自动化中级
UnitTest框架、Fixture、UnitTest断言、参数化、测试报告
4)WEB自动化高级
PO模式、数据驱动、日志处理
5)项目实战
自动化测试流程、项目自动化框架设计、自动化代码实现
3、免费视频资源配套:
1)北京校区-《8天web自动化入门教程》 20.4.9日更新 密码:xest(此免费视频对应上述1-5知识点)


----------------------软件测试视频篇第六阶段——移动自动化----------------------



本阶段软件测试课程共计3类知识点,合计3个免费视频涵盖
1、学习目标:
可掌握的核心能力:
1.掌握移动端APP测试特性;
2.能够熟练搭建移动自动化测试环境;
3.熟悉appium的工作原理;
4.熟练掌握ADB工具的使用;
5.熟练掌握元素的定位方法、元素操作和手势操作;
6.掌握单元测试框架pytest的使用;
7.掌握YAML数据读写;
8.掌握使用allure生成测试报告;
9.熟练掌握PO模式的设计思想;
10.掌握数据驱动的实现方式;
11.掌握Git的使用方式;
12.掌握Jenkins持续集成的环境配置;
13.掌握在实际的项目中如何灵活运用移动自动化的相关技术。
2、知识点:
1)移动自动化特性
APP应用系统架构、测试环境及发布平台、APP敏捷开发模式、APP应用测试要点、业务功能测试、兼容性测试、安装卸载升级测试、交叉事件测试、Push消息测试、性能测试、用户体验测试、稳定性测试
2)移动自动化基础
移动端测试分类及特点、ADB命令及Monkey使用、appium环境搭建、appium工作原理
3)移动自动化中级
APP和手机系统操作、元素定位、元素操作、高级手势操作、混合APP测试、PyTest测试框架、定制测试报告、YAML数据读写
4)移动自动化高级
PO模式、数据驱动、Git、Jenkins持续集成
5)项目实战
APP项目实战
3、免费视频资源配套:
1)北京校区-《移动端测试基础知识视频》 密码:3gyl(此免费视频对应上述1,2知识点)
2)北京校区-《移动自动化测试基础入门视频》 密码:am3h(此免费视频对应上述2-4知识点)
3)实战视频-《Appium进行IOS真机自动化测试》 密码:172p(此免费视频对应上述5知识点)
4) 相关视频,正在紧张打滚更新中


----------------------软件测试视频篇第七阶段——接口测试----------------------



本阶段软件测试课程共计5类知识点,合计n个免费视频涵盖(4个视频已经公布,一个正在紧张更新中)
1、学习目标:
可掌握的核心能力:
1.掌握接口及接口测试相关概念;
2.掌握使用Postman进行接口测试;
3.熟练掌握数据库的基本操作和事务操作;
4.掌握requests库使用及脚本封装;
5.掌握接口测试框架的设计和封装;
6.掌握使用持续集成工具管理接口测试脚本;
7.掌握在实际的项目中如何灵活运用接口测试的相关技术。
2、知识点:
1)接口测试基础
接口及接口测试概念、HTTP协议、接口规范、项目环境说明、接口测试流程
2)Postman实现接口测试
Postman介绍和安装、Postman基本用法、Postman高级用法、Postman测试报告、项目实战
3)数据库操作
数据库介绍、数据库基本操作、数据库事务操作
4)代码实现接口测试
Requests库、集成UnitTest、接口测试框架开发、项目实战
5)持续集成
持续集成介绍、Git、Jenkins、持续集成之Postman、持续集成之代码
6)接口测试扩展
Mock测试、接口测试总结
3、免费视频资源配套:
1)北京校区-《2天带你掌握接口基础》 密码:v5bq(此免费视频对应上述1知识点)
2)北京校区-《接口测试入门篇》 密码:k8rc(此免费视频对应上述2知识点)
3)巩固视频-《Python实现接口自动化测试视频》 密码:edkd
4)实战视频-《python实现头条项目接口自动化测试实战》密码:5kab (与知识点5-7相关视频)


----------------------软件测试视频篇第八阶段——性能测试----------------------


本阶段软件测试课程共计5类知识点,合计n个免费视频涵盖(3个视频已经公布,其他正在紧张更新中)
1、学习目标:
可掌握的核心能力:
1.能够熟练搭建性能测试环境;
2.掌握性能测试基础理论;
3.掌握Jmeter常用组件使用;
4.掌握Jmeter编写和录制性能测试脚本;
5.掌握基于jmeter实现单一和混合场景搭建;
6.掌握思考时间、事务、逻辑控制器在性能测试场景的应用;
7.掌握Jmeter常用性能插件进行图表分析;
8.掌握Linux服务型性能监控方法和指标;
9.掌握数据库监控和调优的常见方法。
2、知识点:
1)性能测试基础
性能测试理论、性能测试分类、性能测试常用指标、性能测试流程
2)性能测试工具
常用性能测试工具、Jmeter环境搭建、Jmeter功能概要、元件作用及执行顺序、线程组、参数化、断言、关联、连接数据库、逻辑控制器、定时器、分布式、测试报告
3)项目-接口性能测试
项目API文档分析、接口清单梳理、接口脚本设计、并发数据计算、逻辑控制器项目应用、单一场景搭建、常用响应图表插件及应用
4)项目-web性能测试
脚本录制、正则过滤、cookie管理器、事务控制器、思考时间、混合场景搭建、web性能脚本执行与分析
5)性能测试调优
windows服务器性能监控、linux服务器性能监控、性能测试报告
3、免费视频资源配套:
1)北京校区-《3天带你入门性能测试2020版》 密码:g0nk(此免费视频对应上述1-3知识点)
2)北京校区-《2天带你入门性能测试》 密码:44t2(此免费视频对应上述1知识点)
3)北京校区-《性能测试工具LoadRunner入门》4.8日更新 密码:hvc9(此免费视频对应上述2知识点)
4) 与知识点4、5相关视频,正在紧张打滚更新中


----------------------软件测试视频篇第九阶段——综合项目实战----------------------


1、学习目标:
可掌握的核心能力:
1.掌握功能测试在真实的项目中如何实施;
2.掌握基于Selenium的Web自动化测试框架搭建和使用;
3.掌握基于Appium的APP自动化测试框架搭建和使用;
4.掌握使用工具实现接口测试;
5.掌握基于Python+Requests库的接口自动化测试框架的搭建和使用;
6.掌握Locust性能测试框架的使用;
7.掌握如何对APP进行性能测试;
8.掌握在实际的项目中如何灵活运用相关测试技术。

2、知识点:

1)项目介绍
项目简介、项目架构
2)功能测试
功能测试设计思路、自媒体端测试、后台管理端测试、用户APP端测试
3)UI自动化测试
Selenium Grid、搭建自动化测试框架、编写自动化测试脚本
4)接口测试
接口测试流程、基于工具的接口测试、基于代码的接口测试
5)性能测试
Locust框架、APP性能测试

3、免费视频资源配套:

1)北京校区-《综合项目_3天黑马头条实战》7.3日更新 密码:pkx4(此免费视频对应上述1、2、3知识点)

2) 与知识点4、5相关视频,正在紧张打滚更新中


----------------------突击实战视频篇-软件测试自学党应看的实战视频----------------------


《两小时快速入门APP功能测试视频》bbs.itheima.com/thread-479198-1-1.html
《无基础入门移动自动化Appium框架》bbs.itheima.com/thread-479432-1-1.html
《全方位讲解性能测试入门基础》bbs.itheima.com/thread-479434-1-1.html
《接口自动化测试实战》bbs.itheima.com/thread-494597-1-1.html
《快速掌握测试编写报告》bbs.itheima.com/thread-494600-1-1.html
《白盒测试用例设计》bbs.itheima.com/thread-494591-1-1.html
《黑盒测试用例设计》bbs.itheima.com/thread-504683-1-1.html
《10节课带你学会测试计划编写篇》bbs.itheima.com/thread-504679-1-1.html
《AirTest自动化测试视频》bbs.itheima.com/thread-504661-1-1.html
《微信小程序测试实战—全网首发》bbs.itheima.com/thread-504655-1-1.html
《安全渗透测试之sql注入-全网首发》bbs.itheima.com/thread-504656-1-1.html
《Charles抓包工具测试实战》bbs.itheima.com/thread-505282-1-1.html
《手把手教你搭建测试环境部署项目》bbs.itheima.com/thread-505280-1-1.html
《自动化测试工具_Jmeter视频》pan.baidu.com/s/1-1q-9Pn(密码:lgqv)


整理不易呀,眼睛都留眼泪了。自学的朋友们,如果觉得资源对你有用,点个赞收个藏,给作者一个鼓励。也方便你下次能够快速查找。

+++

···································^^····································


题主问的泛泛,也不知道题主现在是在职还是离职,更不知道题主之前从事的行业跟软测关系如何,跟IT关系如何,所以到底是自学还是报班,亦或是请熟人带,都不好讲。

不过还是先说说心态吧。不论做什么,心态都很重要(不是最重要而是很重要,毕竟我也是借隔壁文科班妹子的政治书第四册看过的人^_^)。

一个来说,必须有一个良好的学习心态。学习任何知识贵在坚持,如果半途中止,学不好任何东西。

再一个,不懂就要问。学习很忌讳不懂装懂,朋友,老师,网络,都是可以用来搜索答案和提问的地方。子曰:“知之为知之,不知为不知,是知也。”不懂装懂很难自我提升。

然后说说行业吧。

软测行业内部,也是有分层的,最赚钱的,比如说性能测试,这个收入一般就比较让人羡慕了。比较赚钱的,比如白盒,再比如自动化,这都是相对高端的。

手工黑盒做三年,这时候一般都是瓶颈期。

有一些人能够感觉到自己的瓶颈,有些人感觉不到。

感觉到自己瓶颈期的人会选择各种各样的突破方式,有的自学一门语言,打算学点儿开发知识;有的学数据库知识,打算往DBA发展;有的学系统学部署,做部署工程师;有的学习自动化工具,性能的啊,功能的啊,希望变成自动化工程师。

这些是不打算做手工测试了,我们祝他们好运。

继续坚持手工测试呢,有些人就开始转管理了,做组长,做经理,这样;有些人学业务,成为业务专家。

所以说即使要入门软测,选择什么也是颇有讲究的。

想好方向,再想方法。

然后题主再根据自身情况,考虑一下到底是报班还是自学。

我有份视频,是教基础的。你可以看看 软件测试教学视频-

···································^^····································


一、想要零基础学好软件测试,当然需要对测试有一个良好的认知。

  1、什么是软件测试?

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

  2、怎样才算一个真正的软件测试工程师?

  真正的软件测试工程师算是半个产品经理,半个开发工程师。有人觉得这个标题有点讽刺,真正的测试?难道我们不是真正的测试,平常做的都不是测试的工作吗?其实不肯定也不否定,但这是一个包含关系,如果只是评审+用例编写执行,那么确实不是一个真正的测试。

  正如标题那样,我认为真正的测试 =“半个产品+半个开发”。

  半个产品,主要体现在理解这个需求为什么要做?其核心价值在哪里?吸引用户的特点是什么?意味着在评审阶段,你除了帮助完善功能需求外,更重要的是理解这个需求对于用户有什么价值,你是用户你会怎么想有什么感受,不能简单的走完流程就可以了,比如一个播放视频类应用, 多样性 流畅度 简易性 快速性等 这是在评审之后可以总结出来的,那么抱着这个价值点,围绕这我们的整个测试流程,往往能够发现不一样的地方。比如还是播放类应用,在我了解个特性后,在测试过程中我会更加留意播放方面的性能,以及兼容性,在我设计测试方案的时候就会标明这几个测试重点,以便我自己或者组员能够在测试过程中多加留意这部分的测试点,然后在设计测试用例的时候会提高优先级和覆盖率。可以发现,测试有了测重点。

  半个开发,其实个人认为这是偏向于灰盒测试了,体现在一个需求,你除了要明确这个需求的业务逻辑,其代码逻辑(数据流逻辑)也是需要知道的,从后台获取的json数据结构到客户端展示再到存储至本地数据,这一个流向,都是需要去了解并测试的(这部分参照之前写的测试分析文章),所以测试验证的不仅仅是功能层面的东西,还是内部的具体实现(当然,具体到类方法的测试那是测试开发的职能,不关咱测试的事),我们要保证的,就是这一阶段数据的正确性和容错性。这样做的好处是,能从内部发现缺陷,在出现问题的时候可以大概定位到问题出在哪,在出问题面对boss的质疑能够把责任丢给开发,哦不,是更好的解决问题。

  那么半个开发还体现在对工具效率的提升上,能够通过小脚本,小框架去提升测试效率,这要求对于基本的语言要求是必须的,大公司面试的某一轮考研的就是你的代码能力,所以测试还是半个开发这一点是毋庸置疑滴。

  1、测试项目启动与规划

  一般地,项目启动过程组包括两个过程:即制定项目章程和制定项目初步范围说明书;而项目规划过程组则会综合项目的成本、范围、时间、质量、风险、人力、沟通、采购等因素制定项目计划,该项目计划将用于指导项目的实际执行。

  对任一项目而言,有三个文件是非常重要的。即:项目章程、项目范围说明书,项目管理计划。这三个文件均产生于项目启动阶段和项目规划阶段。其中项目章程被认为是三大文件之首(项目章程、项目范围说明书,项目管理计划)。一个项目,不论大小,都应该有项目章程。

  一个典型的项目章程包括如下内容:

  1)项目名称及背景描述;

  2)项目经理任命及职责范围界定;

  3)项目业务需求描述;

  4)项目发起的原因;

  5)主要项目干系人及其初步需求;

  6)产品及预期交付成果描述;

  7)项目假设和约束条件。

  三、零基础如何学好软件测试,不懂测试方法怎能事半功倍?

  1、从测试设计方法分类

  Black box黑盒测试:把软件系统当作一个“黑箱”,无法了解或使用系统的内部结构及知识。从软件的行为,而不是内部结构出发来设计测试.

  White box白盒测试:设计者可以看到软件系统的内部结构,并且使用软件的内部知识来指导测试数据及方法的选择。

  Gray box. 灰盒测试:介于黑盒和白盒之间

  总结: 实际工作中,对系统的了解越多越好。目前大多数的测试人员都是做黑盒测试,很少有做白盒测试的。 因为白盒测试对软件测试人员的要求非常高,需要有很多编程经验。做.NET程序的白盒测试你要能看得懂.NET代码。做JAVA程序的测试,需要你能看懂JAVA的代码。 如果你都能看懂了,你还会做测试么

  2、从测试是手动还是自动上分类

  Manual Test 手动测试:测试人员用鼠标去手动测试 (测试GUI)

  Automation 自动化测试:用程序测试程序 (测试API)

  对于项目来说, 手动测试和自动化测试同等重要,都是保障软件质量的方法。 目前大部分的项目组都是手动测试和自动化测试相结合。因为很多测试无法做成自动化,很多复杂的业务逻辑也很难自动化, 所以自动化测试无法取代手动测试。

  对于软件测试人员个人发展来说, 做自动化测试是个挑战,也是测试人员发展的一个方向, 需要测试人员学习大量的开发知识(开发的知识真是学无止境啊)。 从长远角度来看,自动化测试肯定是越来越吃香的。

  而手动测试比较适合刚工作不久的人,手动测试最大的缺点就是技术含量低,单调乏味,容易废人。

  总的来说,手工测试胜在测试业务逻辑,而自动化测试胜在测试底层架构。

  如果被测试的程序可测试性比较好, 很有必要做成自动化测试。 能做自动化的尽量做成自动化, 下面这些情形是可以做自动化的:

  1) 测试存储过程。 例如用C#去测试存储过程

  2)测试Web servies. 例如: 用SoupUI工具,或者C#,Java 去测试Web servies。

  3)界面和业务逻辑分离的系统,比如,MVC,MVP架构, 或者WPF 程序。 可以用测试脚本去测试这些程序的API。

  3、从测试的目的分类

  功能测试

  测试的范围从小到大,从内到外, 从程序开发人员(单元测试)到测试人员,到一般用户Alpha/Beta测试

  Unit Test 单元测试:在最低的功能/参数上验证程序的准确性,比如测试一个函数的正确性(开发人员做的)

  Functional Test 功能测试:验证模块的功能 (测试人员做的)

  Integration Test 集成测试:验证几个互相有依赖关系的模块的功能 (测试人员做的)

  Scenario Test 场景测试:验证几个模块是否能完成一个用户场景 (测试人员做的)

  System Test 系统测试:对于整个系统功能的测试 (测试人员做的)

  Alpha 测试:软件测试人员在真实用户环境中对软件进行全面的测试 (测试人员做的)

  Beta 测试:真实的用户在真实的用户环境中进行的测试, 也叫公测 (最终用户做的)

  非功能测试

  一个软件除了基本功能之外,还有很多功能之外的特性,这些叫“Quality of Service requirement”服务质量需求。没有软件的功能,这些特性都无从表现出来,因此,我们要在软件开发的适当阶段-基本功能完成后做这些测试。

  Stress test 压力测试:验证软件在超过负载设计的情况下仍能返回正确的结果,没有崩溃

  Load test 负载测试:测试软件在负载情况下能否正常工作

  Performance test性能测试:测试软件的效能,是否提供满意的服务质量

  Accessibility test:软件辅助功能测试-测试软件是否向残疾用户提供足够的辅助功能

  Localization/Globalization:本地化/全球化测试

  Compatibility Test:兼容性测试

  Configuration Test:配置测试-测试软件在各种配置下能否正常工作

  Usability Test:可用性测试 –测试软件是否好用

  Security Test:软件安全性测试

  性能测试

  性能测试要求测试人员熟练性能测试工具,比如QTP, LoadRunner, Jmeter。 Visual Studio也提供了很多性能测试的工具. 要求测试人员对低层协议非常理解和编写脚本

  性能测试非常有技术含量, 很有发展前途, 是软件测试人员的一个职业发展方向。

  安全性测试

  安全性测试的内容很广, 非常有难度啊。 我只接触过XSS(跨站脚本攻击)和SQL注入攻击。

  安全性测试非常有技术含量, 我认为也是软件测试人员的一个职业发展方向

  4、按测试的时机和作用分类

  在开发软件的过程中,不少测试起着“烽火台”的作用,它们告诉我们软件开发的流程是否畅通。

  Smoke Test:“冒烟”–如果测试不通过,则不能进行下一步工作

  Build Verification Test(BVT):验证构建是否通过基本测试。

  Acceptance Test:验收测试,为了全面考核某功能/特性而做的测试

  BVT测试是一种Smoke Test, 指Build生成好之后,自动运行的自动化测试脚本来检查这个Build的基本功能。 如果BVT测试失败了,需要开发人员马上修改,重新生成Buil

  5、按测试测策略分类

  Regression Test 回归测试:对一个新的版本,重新运行以往的测试用例,看看新版本和已知的版本相比是否有退化 (regression)

  Ad hoc Test 探索性测试:随机进行的,探索性的测试。

  Santiy Test:粗略的测试, 只需要执行部分的测试用例

  Regression Test 回归测试:

  对软件测试人员来说就是重复测试,所以回归测试最好是自动化的,否则测试人员就要一遍又一遍地重复测试。

  1)开发人员做些小改动,就需要测试人员做回归测试。确保现有的功能没有被破坏;

  2)Bug Fix 也需要回归测试,确保新的代码修复了Fix, 也确保现有的功能没有被破坏;

  3) 项目后期,需要做一个完整回归测试, 确保所有的功能都是好的。

···································^^····································


对于零基础的小白来说,要想转行学习软件测试,首先需要确定自己是否适合转行入坑。

软件测试虽然入行门槛在IT技术岗位里算比较低的,但是还是有一些硬性或软性的要求。转行者可从以下几点来评估自己是否适合转行软件测试。

1、学历

转行者,以就业和发展为目的。

目前市场上,企业对软件测试者的学历要求是大专及大专以上,这也是汇智动力为啥不建议大专以下学历的小伙伴转行进入IT技术岗的原因。学历不够,即使学会了,在就业的时候也有一定的困难。

虽说学历≠能力,但是在软件测试岗位上,学历也算是用人单位的一个硬性要求,如果年龄不大,可以先考个学历证书,再入坑IT技术岗。

2、年龄

大龄转行并不是不行,但是要慎重!软件测试岗位属于技术性比较强的岗位,对于零基础的小白来说,要学习知识和技术还是很多。软件测试的技术更新虽不及软件开发那么快,但是随着物联网、人工智能的发展,技术更新的频率势必会增快,长期保持学习新技能是软件测试工程师的常态。

对于30几岁的人来说,要从零开始积累,在软件测试行业里相对有些困难。所以想转行软件测试岗位的朋友,也可以评估一下自己的精力和学习能力。

3、兴趣

对于自己不太了解的东西,可能谈兴趣有些突兀,但是如果不喜欢长期面对电脑,不喜欢一坐就是几个小时,反感代码的小伙伴还是趁早打消转行测试的念头。毕竟人生除了钱,还有心情!

如果对一件事保持莫大的激情,那么做好的概率会大大增加!

在确定了要转行软件测试之后,接着就需要选择学习的途径。途径并无好坏之分,只有适不适合个人,其最终目的都是为了掌握好相关的知识和技术。对于小白来说,常见学习的途径有自学和找培训班,汇智妹之前对这两种途径进行了对比分析,想了解的伙伴可以看看。

小白如何进入IT行业及如何选择培训机构

·······································································

我想打听一下天津和济南这两个地方做软件测试的薪资是多少,?

我们精选了一下网友答案:

济南硕士的话应届起薪在3000-4000左右,甚至跟高一些,本科的话薪资在1500以上,当然这个还有很大的幅度,要是你有经验或是你很牛的话,薪资比这个要高很多,如果你很牛,可以跟面试官谈判。

···································^^····································


2000-8000,测试关键要业务背景,做的时间长了,积累了业务背景,工资就上去了

···································^^····································


跟工作经验有关的吧。。。
毕业生 3000左右吧

···································^^····································


·······································································

主题党日|检测认证事业部软件测评中心党支部联合多支部开展“重走长征路” 主题党日活动

我们精选了一下网友答案:

···································^^····································


11月15日,检测认证事业部软件测评中心、职能中心和极限检验中心等5个党支部联合开展“重走长征路”党日活动。本次活动以“创先争优聚合力,服务大局促发展”为主题,旨在号召广大党员群众弘扬长征精神,锤炼意志品质,心怀崇高信仰,争做服务先锋。

整装待发

“长征”开始前,检测认证事业部党员群众作为“中国工农红军第一方面军”集结完毕,整装待发,在“瑞金”举行庄严的授旗仪式和入党宣誓仪式。

一起冲锋

“长征”途中,“三军”选取湘江战役、遵义会议、四渡赤水、飞夺泸定桥等11个红军长征途中的重要历史事件,回顾长征期间的震撼故事,实地感受红军不怕远征难,万水千山只等闲的革命信念和无畏精神。

胜利会师

    “三军”会师,军民同乐。红军经历二万五千里长征,突破了数十万国民党军的围追堵截,完成了伟大的战略转移,中国革命和革命战争从此揭开新的篇章。

歌唱祖国
活动最后,全体战士齐聚一堂,大家用激情唱响红歌,用真情献礼祖国。此次活动不仅是为了缅怀革命先烈,也激励我们这一代人心向党、爱祖国、有理想、勇拼搏。长征精神永留存,争做红色筑梦人。

合影留念

软件测评中心隶属于中汽中心检测认证事业部。中汽中心检测认证事业部隶属于中国汽车技术研究中心有限公司,业务全面覆盖检测、认证、场地服务三大业务板块

  • 发表于 2020-11-21 21:12
  • 阅读 ( 436 )
  • 分类:软件测评

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
admin
admin

0 篇文章

作家榜 »

  1. xiaonan123 189 文章
  2. 汤依妹儿 97 文章
  3. luogf229 46 文章
  4. jy02406749 45 文章
  5. 小凡 34 文章
  6. Daisy萌 32 文章
  7. 我的QQ3117863681 24 文章
  8. 华志健 23 文章

推荐文章

联系我们:uytrv@hotmail.com 问答工具