软件测试笔试题,软件测试笔试题及答案

ysladmin 32 0

软件测试可以自学吗?

本回答只告诉你 软件测试 月薪如何过万

很多人做了两三年软件测试,月薪却一直无法过万。那软件测试月薪过万的标准是什么呢?大家都知道做软件测试的前期,都是以功能测试为主。但是功能测试,它不缺人才,市面上很多培训机构出来的人,出来必然都是能做功能测试的。

所以这个岗位稀缺度就不那么大了,市场竞争也是最激烈的。这个岗位企业就可以慢挑慢选、择优录取了。

软件测试笔试题,软件测试笔试题及答案-第1张图片-安安范文网
(图片来源网络,侵删)

你要是一直做功能测试,你能跟别人拼什么呢,只能拼项目经验,拼业务逻辑能力,拼你的为人处事,拼面试表达能力,这个就是你硬性的先天优势了,毕竟表达能力这事儿,也不好后期去练。

如果你要是不想跟人去过这些招儿的话,那就只能靠专业技能跟他们厮杀。现在企业里不可能说给你一万块钱让你只做功能测试,因为他们能花七千招来的人,他绝对不会花一万。既然要在你身上花一万,肯定是要体现一万的成果。而你最明显可以跟功能测试的人拉开差距的地方,就是接口测试。因为功能测试是在UI可视化界面上进行测试的,而接口是不需要可视化界面的,是可以尽早介入测试的。

做过软件测试的,也都知道软件测试的阶段有单元、集成、系统验收。功能测试只能在系统阶段干活,而接口测试能够在集成阶段干活,这个对于企业来说作用是很大的,就会愿意给出更高的价格。

软件测试笔试题,软件测试笔试题及答案-第2张图片-安安范文网
(图片来源网络,侵删)

所以你们要想做接口测试,就必须要懂数据库。那你做接口测试,怎么去验证数据结果是不是正确的呢?这时候就要从数据里去验证接口是否传输成功了,数据库就是必然要学的了。接口和数据库你都学会了,接口这活就彻底能干了。然后顺便你再学一下接口的性能压测。接口功能你都会了,再捎带学一下性能压测,学一下jmeter等一些基本的应用。

达到了这个标准,你再有点工作经验,项目经验,你要个一万块钱就绝对不过分。

那如果你感觉还是不稳,我还想稳定一点的轻松过万,那你就踏踏实实的把性能、自动化你至少学一门,我敢保证你肯定过万了。哪怕你达不到高级的性能、自动化工程师的水平,你能达到个初级也行,好歹你能干点儿活儿,你别一点儿也不懂,这也是能够让你轻松过万的。

软件测试笔试题,软件测试笔试题及答案-第3张图片-安安范文网
(图片来源网络,侵删)

咱们再说从一万二怎么到一万五,怎么到一万八,怎么到两万的过程。当你干的时间越长,熟练度越高,解决的问题越宽泛,效率越高,干活标准越高,你薪资就越高,这就需要在工作上去体现了。

http://yun.itheima.com/map/72.html?hm$javaeezly

做软件测试都需要哪些技能?

测试的技能,其实就只有两种,测试用例的编写技能和编写优秀bug记录到的技能,而要让测试用例能够覆盖各种各样的场景,是需要熟悉多样的工具来辅助进行测试用例的编写的。下面来看下测试用例都有那些种类以及要编写这样的测试用例,需要什么的技能

测试用例的种类

  • 功能测试用例

功能测试用例的编写必须建立在对业务非常熟悉的基础上,具体实现手段无非是手动执行和自动化执行。

  1. 手动执行的测试用,通过excel或者各种项目管理平台提供的测试用例编写功能,编写测试用例,然后手动操作执行,并记录结果。这里需要的技能熟练使用的各种工具就行,比如jira、excel等等。

  2. 自动化测试用例,是通过代码编写测试用例,需要用到自动化测试用框架,这里需要用到的技能,比如python、java编程语言,appium、uiautomator等这些自动化测试框架。

  • APP专项测试用例

APP专项测试用例,比如电量、流量、流畅度、内存、兼容性等测试用例,这里需要的技能是要熟悉电量统计原理以及收集电量数据的工具,以及电量问题的分析技能,比如是在Android平台上的应用,那你还得熟悉Android的平台特性等。
  • 接口测试用例

如果是单接口调试,需要了解postman这些测试工具的使用,还有CI,来实现持续集成,如果是业务流的自动化测试,还需要利用各种单元测试框架来实现自动化测试,比如java生态的restassured、assertj、junit等,python生态里的requests,pytest等
  • 服务端性能测试用例

服务端性能测试用例设计需要知道,性能场景分析,各种分析调优的技能,模拟压力的工具,这里就需要了解服务端架构,mysql、Redis等这些中间价的特性,Linux操作系统以及Linux监控命令等。

总结

测试如果做的很浅,其实需要的工具并不多,只需要把测试用例设计的完善就好,但是如果想的更深入更加广泛,就需要了解各种各种的工具,来帮助你实现测试需求。

学无止境,一起加油。。

如果认同我的观点,或者认为说的还行的,给个赞或者评论,支持一下,码字不易,且读且留痕。。谢谢哈

软件测试需要学习测试用例、测试用例的方法、缺陷管理工具、掌握数据库、App测试、python语言、Linux系统、前端语言等技能。

1、测试用例

这是每一个工程师必备技能,也是标志你进入测试行业最低的门槛,关于测试用例可以参考我以前写的文章。

2、测试用例的方法

测试用例的方法,只用掌握相关的方法,才能把测试用例写好,覆盖度高。

3、缺陷管理工具

缺陷管理工具,就是提交bug工具,这是评价软件质量考核之一,也是软件工程师的价值所在。

4、掌握数据库

掌握数据库非常重要,这个世界由许许多多数据组成,软件测试,就是满足客户的需求,但必须数据正确,其实软件工程师需要对数据流向的了解,才能更加深入地了解业务,这也是一项基本技能之一。

5、App测试

App测试,从兴起到目前市场的成熟,APP可以说成为市场上的主流产品。若你不会APP的测试,很多公司是是不要的,所以需要我们深入了解。web测试,其实跟App相似。

7、python语言

python语言是现在最流行的语言,这是测试人员技能升级最好的方式之一,测试人员可以利用他做非常多的事情。

8、Linux系统

Linux系统,测试人员利用它最多的是看日志,更好地为开发定位bug,这也是提升技能之一。

软件测试就是在现有软件中寻找缺陷的过程。在规定的条件下对程序进行操作,目的是在用户使用之前发现错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。只要企业要研发软件,那么就需要软件测试工程师,所以软件测试在IT中是相当吃香的一个行业。

软件测试相较于Java、python这些学起来更简单、还没有中年失业危机,所以越来越多的人想做软件测试工程师。不过因为在入行之前要先学习,很多零基础的人都担心自己能不能学会,今天小编就说说软件测试工程师培训需要什么基础吗?非计算机专业可以吗。

培训机构的软件测试课程是从基础知识开始讲的,比如优就业的软件测试课程就是从简单的功能测试开始讲起。所以零基础的人也能学习,不用担心自己不能学会。而软件测试中涉及代码的部分比较少,手工测试基本需要编程的,自动化测试才需要你有一些代码能力来编写脚本,所以软件测试的课程中涉及编程的地方会比较少,你不是计算机专业也是可以学习的。

其次培训机构有老师全程监督你学习的,学习上有困难可以问老师,老师会帮你及时解决,所以一般只要你找个靠谱的培训机构认真学是可以学会软件测试的。最后有的培训机构还有免费重学服务,你没学会可以免费再学一遍。

综上不论你是零基础还是非计算机专业都是可以通过培训学会软件测试技能的,培训机构有着系统的课程体系、经验丰富的讲师、大量项目资源,这些都能帮助你尽快学懂软件测试。

中公优就业为您解答。

软件测试中手工测试重要还是自动化测试重要?

其实这个问题很多人都会问,然后也有很多人认为自动化测试更重要。

以我在测试行业十几年工作经验来看,自动化测试是手工测试的有效补充,这个观点我很认同。但是自动化测试能主导甚至取代手工测试,我认为在可见的未来,都不太会做到。

原因我们一起来探讨一下,主要是看自动化测试能实现的目的是什么:

自动化测试是什么呢?自动化测试是按照我们事先编写好的脚本,按照一定顺序或随机顺序,执行脚本步骤,并对比预期结果,得到测试实际结果的一种测试手段(未参考百度百科,纯粹自己总结,不对可以一起探讨)。既然是事先编写好的脚本,那么自动化测试其实就是为了验证当前逻辑分支或黑盒功能是否存在问题。用例覆盖代码分支,是存在一定遗漏的,我在数家公司验证过,用例最多覆盖70%的代码逻辑;而用例发现bug的比例,不会超过60%。那剩下的40%,依赖于测试人员的经验和对业务的熟悉程度,所以手工的自由测试或者探索测试,仍然有必要存在。

有人会问:那我也可以依赖经验和对产品业务的熟悉程度,写出相应的测试用例,然后自动化执行。

这么说也没错,绝对可行。但是带来了第二个问题:自动化测试维护成本相比手工测试,会高多少?如果持平,那么你全部写成自动化脚本,还是很合理。如果过高,很多工程师只会把一些大量重复性的用例转换成自动化。

对软件测试而言,如果软件功能逻辑、界面等变更较频繁,自动化脚本往往不一定适配下一个版本,需要每个版本花时间进行调试,这样对测试工程师来说就叫维护成本。如果调试时间太长,靠自己手工测试早就完成了,那么自动化测试的价值就不存在了。

所以综上所述,我认为自动化和手工测试,都同样重要,而且相对而言,在产品研发初期或者一些小公司,手工测试一定占据主导地位,除非我们有一个不依赖界面、维护成本低的自动化工具。如果大家真有这种神器,还请分享一下,我来学习学习。

最后说句题外话,学了自动化的技能,对自己涨薪还是有很大帮助的,哪怕暂时用不上,哈哈!

加大牛校招小助手:daniu-helper 面对面交流

通过公众号:大牛校招 了解更多的信息

软件测试中,手工测试是基础,自动化测试是提升效率的手段,也是未来的趋势。想要做好测试,二者都很重要,不可或缺。

手工测试

一次完整的测试行为中,可能不包含自动化测试,但一定会包含手工测试。手工测试是对被测产品的总体需求进行全面验证,把真实用户所有可能输入的数据分类后进行等价测试,容易查出程序中的错误。

也就是说,手工测试是以用户的角度,从输入和输出的对应关系为出发点,进行测试的,注重软件的功能正确性。手工测试主要试图发现以下几类错误:

功能不正确或遗漏;

UI错误;

数据库错误;

等等。

用户可能输入的数据千奇百怪,所以手工测试的时候,不仅要测试所有合法的输入,还要测试那些不合法,但是可能会出现的输入。这就需要引入测试用例,来量化管理这些输入的类型,比如等价类,边界值,因果图等,都是常见的用例设计方法。

但几个测试人员,在规定时间内,就算不吃不喝不睡的测试,也不能涵盖所有可能发生的用户使用场景,这个时候就要引入自动化测试的手段啦。

根据我自己的工作经验,自动化测试一般用于回归测试和兼容性测试。

比如上线一个新版本,除了验证新功能的正确与否,还必须保证旧功能的正常运作。但是针对旧功能,没有必要每次都手工跑一遍测试用例,太费时间。我们可以针对旧功能,写一个自动化脚本(比如登录注册页、用户反馈页这些很少去碰去改动的页面),每次都让脚本自己运行一遍,一般没什么大问题。

接下来说说自动化工具应用于兼容性测试的场景。

现在移动端测试,要涵盖的机型很多,苹果还好,安卓的机子简直数不过来,手工去兼容的话,一个人最多看3-4个,再多就顾不过来了,耽误进度了。写一个自动化脚本,可以运行在所有你要兼容的机型上面,就会节省很多人力和时间。

自动化当然也有缺点,就是大多数时候,脚本只能是一次性的,如果针对某个功能写了一个脚本,下次这个功能改动了,这个脚本基本就作废了。

我刚开始接触自动化测试的时候,没有经验,好几次都是千辛万苦写好了脚本,产品经理和开发人员又改了东西,我又要跟着改。

啊,写到这里突然好恼火 = =|||

这个问题好像好多人都问过。手工测试、自动化测试哪个更重要❓ 答:都重要,不存在孰轻孰重的问题。

感觉可以考虑,不同场景或阶段下选择哪种方式当时更适合?

手工测试和自动化测试都基于对用户需求、功能需求的正确理解,对测试对象进行充分测试设计的基础上开展的。

按照测试阶段或者功能稳定程度来划分,手工测试更适合软件模块、集成测试阶段或者功能稳定性低(缺陷多、变动快等),如果这个时候开展自动化会引入过多的自动化开发、维护成本。自动化测试更适合在产品迭代后期或者功能相对稳定的时候开展,通常应用于回归测试场景下(关注我后续的文章,会有关于自动化前移的探讨)。

按照不同的测试对象来划分,如测试百万级的元数据迁移、汇聚处理时,由于数据的多样性,很难通过用手工测试保障质量,自然而然需要考虑自动化的方式提高测试效率,进而保障测试质量。时间有限的情况下,使用自动化尽可能覆盖重复性高的操作。

同时自动化并不是生搬硬套,根据不同的业务场景选择合适的自动化框架十分重要,可以有效的提高测试开发效率和降低维护成本。如,对于一个含有强流程的业务模块,采用关键字驱动测试框架更利于用例的组织和维护。通常常用的自动化框架还包含数据驱动测试框架、模块化测试框架。

自动化测试的类型也要因地制宜,如ui自动化、接口自动化等等,也需要结合业务特点、底层架构选择合适的类型开展。

最后应该尽量避免为了做自动他而做自动化,而是为了去做更多有价值的测试。

标签: 软件测试笔试题