前一阵子有个小徒弟向我诉苦,说自己在到场某大厂测试口试的时间被口试官怼得哑口无言,局面让他一度非常尴尬
印象最深的就是下面几个题目:
根据你以前的工作履历和学习到的测试技术,说说你对质量包管的理解?
非关系型数据库和关系型数据库的区别,谈谈上风比较?
在主动化方面有什么成熟的方案,有没有做过二次开辟?
dubbo接口了解吗,它的测试焦点是什么
质量部如果需要定制化一个质量体系平台,你会考虑哪些题目?
不到半小时,他这次口试就结束了。
然后徒弟就收到了“回去等消息”的通知。结果,他当天晚上就看见口试官发了一条如许的朋侪圈:
徒弟看完很受打击,就来找了我。本日就来好好掰扯一下“主动化测试”这个题目吧。
什么是主动化测试呢?
关于这个题目,大概没有准确的答案。
普遍以为的是接口主动化测试,WebUI主动化测试,app主动化测试等被冠以主动化定名的测试方案。
实在不然,主动化测试是相对于手工而言的,用代码或是借助于第三方工具,把繁复的测试工作从手工转化为呆板主动实行的测试方案,可以统称为主动化测试。
除了上面所说的三个方面的主动化测试,当然还包罗日志过滤,日志回放,接口监控,服务监控等等,根据详细业务需求通过代码把人力从中解放出来的代码手段。
为什么要做主动化测试?
从工作角度来说,目前互联网行业需求迭代非常快,职员流动也比较快,所以一个需求从提出到上线时间比较告急,同时对于其影响的范围也大概不太清楚,在上线之前必须对原有功能进行回归测试。
不管是接口还是从客户端,都需要大量的测试工作,而且在大数据时代,测试用例量也优劣常庞大的,如此繁复单调的工作让人工来测试的话,根本不能包管服从和质量,所以必须要借助于非人工手段来实现。
从个人发展方面来讲,时代在发展,对我们的要求也越来越高,所以我们要迎接变化,不停提升自己才行。固然你可以坚持手工测试是基础,是王道,但是并没有企业乐意为你这个信心买单。
除非你生存无忧无虑,可以坚持自己的信心,否则你就要尊重业界发展的规律,不停充电从而使自己更有代价。大概再过几年,主动化测试会成为从业者的准入门槛,如果做不好主动化测试,所谓的高薪也就无从谈起。
那该怎样学习主动化测试?
既然主动化测试是手工测试提升的一个必经之路,固然主动化测试没有那么高大上,但也是必不可少的。那作为一个有理想的测试职员,应该怎样去学习主动化测试呢?
(1) 准确定位自己,明确目的
有不少同砚意识到了主动化测试的紧张性,就去网上查询资料啊,或是报培训班学习啊,但是到末了越学越迷茫,处于会与不会之间,前路不知怎样去走?这是什么原因呢?
这是因为你在学习主动化测试之前没有想明白几个题目:我的真实水平怎样?如果学习一项新的技术或是语言,我乐意投入的精力是多少?从如今开始学习,三个月或是半年后应该达到什么目的?我了解如今业界的主动化测试类型或是体系吗?想好这些题目再去入手学习或培训,肯定事半功倍。
(2) 全面了解,选好切入点
目前主动化测试方向大概有以下几个:
A、辅助测试脚本方向:以Shell,Python为主来简化重复的工作,过滤日志等;
B、接口主动化测试方向:Python+Unittest+HtmlTestRuner+Jenkins和Java+Httpclient+TestNG+Jenkins,当然还有很多其他二次开辟的框架或工具,不外焦点是一样的;
C、页面主动化方向,主要有Python+Webdrver+HtmlTestRunner+Jenkins,Java+Webdriver+TestNG+Jenkins,以及其他的框架和工具;
D、app主动化测试方向:以Robotium+Java+TestNG+Jenkins, appium+Java+TestNG+Jenkins,appium+Python+HtmlTestRunner为主。
当然这里介绍的都是简单的,最基本的实现方案,作为入门学习比较合适。其他五花八门的二次开辟的框架,包含众多功能的方案留待你以后提升。先从这几方面了解入手,选择一个语言体系,发起从接口主动化入后,然后再去学习页面和app。
(3) 步步为营,不要贪多
我们在提升自己的时间,发现有好多东西需要学习,于是就很发急,想同时学习很多东西,实在这并不好。学的太多容易产生混淆,而且不容易消化,你细致调研一下就会发现,很多东西都是通着呢。代码架构,用例管理,实行策略,连续化集成思想都可以闻一知十,关键是自己要动手真正实施起来,在公司如今的框架上写用例,不管你写多少,不了解整体结构都是没有用的。
(4) 抛弃工具,多用开源
业界好像从来不缺少主动化测试工具,QTP,RealobotFramework,LoadRunner等等,着名不着名的数不胜数。先不说这些工具结果怎样,目前大公司是从来不用这些工具的,各人都利用开源的框架,工具进行定制化自己的测试方案。
所以刚刚学习主动化测试的时间,也不要依赖工具,利用开源Webdriver,appium,Robotium等搭建自己的主动化测试工程。掌握一个整体的主动化工程工作原理,为以后搭建自己的主动化工程,工具,平台做准备。
不管你对主动化测试是爱,是恨,它都是从手工测试转为测试开辟必经的阶段。大概你了解到主动测试没有用,实施起来维护本钱高,实行服从低等负面信息,实在这不是主动化测试的题目。
要知道,它只是一个工具,一种测试方案,最终的结果还是由实施的人来决定的。在12,13年的时间,用Jenkins做连续化集成比较热门,接下来几年好像没有那么火了,但是近两年docker技术的出现,又使CI,CD变得火热起来。我们是不是应该端正对主动化测试的态度,明确什么才是你想要的,找准方法,不停提升自己呢?
为了能让各人有更好的口试资料,花费了1个多月的时间,把市面上的软件测试口试题,做了一个归纳总结,整理了一份pdf,够各人刷题复习了!除非口试的题目很刁钻,否则就难不倒你了。
大厂软件测试岗履历分享
通过大数据总结发现,实在软件测试岗的口试都是差不多的。常问的有下面这几块知识点:
第一部分,测试理论(测试基础+需求分析+测试模子+测试筹划+测试策略+测试案例等等)
第二部分,Linux( Linux基础+Linux训练题)
第三部分,MySQL(基础知识+查询训练+万年门生表经典口试题汇总+数据库企业真题)
第四部分,Web测试
第五部分,API测试
第六部分,App测试
第七部分,管理工具
第八部分,Python基础(Python基础+编程题+集合+函数+Python特性等等)
第九部分,Selenium相关
第十部分,性能测试
第十一部分,LordRunner相关
第十二部分,盘算机网络
第十三部分,组成原理
第十四部分,数据结构与算法
第十五部分,逻辑题
第十六部分,人力资源
软件测试基础
软件测试的步调是什么?
怎样录制测试脚本?
应该考虑进行怎样测试的测试方法
怎样估计测试工作量?
测试设计的题目
当测试过程发生错误时,有哪几种解决办法?
测试实行的题目
测试评估的目的
怎样提高测试?
C/S模式的优点和缺点
B/S模式的优点和缺点
Linux
grep和find的区别? grep 都有哪些用法?
检察IP地点?
创建和删除一个多级目次?
在当前用户家目次中查找haha.txt文件?
怎样查询出tomcat的进程并杀掉这个进程,写出linux命令?
动态检察日志文件?
检察系統硬盘空间的命令?
检察当前呆板listen 的全部端口?
Python
统计python源代码文件中代码行数,去除注释,空行,进行输出?
python调用cmd并返回结果?
冒泡排序
1,2,3,4 这4个数字,能组成多少个互不雷同的且无重复的三位数,都是多少?
请用 python 打印出 10000 以内的对称数(对称数特点:数字左右对称,如:1,2,11,121,1221 等)
给定一个整数 N,和一个 0-9 的数 K,要求返回 0-N 中数字 K 出现的次数
判断 101-200 之间有多少个素数,并输出全部的素数
一个输入三角形的函数,输入后输出是否能组成三角形,三角形类型,请用等价类- 划分法设计测试用例
MySQL
你用的Mysql是哪个引擎,各引擎之间有什么区别?
怎样对查询命令进行优化?
数据库的优化?
Sql注入是怎样产“生的,怎样防止?
NoSQL和关系数据库的区别?
MySQL与MongoDB本质之间最基本的差别是什么
Mysql数据库中怎么实现分页?
Mysql数据库的操纵?
优化数据库?提高数据库的性能?
什么是数据的完整性?
Web
Web测试和app测试区别?
WEB测试环境搭建和测试方法
WEB测试教程
WEB测试要点及基本方法
Web测试页面总结
…
接口测试
什么是接口
如果模块哀求http改为了https,测试方案应该怎样订定,修改?
常用HTTP 协议调试代理I具有什么?详细阐明抓取HTTPS协议的设置过程?
描述TCP/IP协议的条理结构,以及每一-层中紧张协议
jmeter,一个接口的相应结果如下:
接口产生的垃圾数据怎样清算
依赖第三方的接口怎样处理
测试的数据你放在哪?
什么是数据驱动,怎样参数化?
…
性能测试
你以为性能测试的目的是什么?做好性能测试的工作的关键是什么?
服务端性能分析都从哪些角度来进行?
怎样理解压力测试,负裁测试以及性能测试?
怎样判断是否有内存走漏及关注的指标?
描述软件产“生内存泄漏的原因以及查抄方式。(可以结合- 种开辟语言进行描述)
简述什么是值通报,什么是地点通报,两者区别是什么?
什么是系统瓶颈?
…
selenium
怎样开展主动化测试框架的构建?
怎样设计主动化测试用例:
webdriver怎样开启和退出一个浏览器?
什么是主动化测试框架?
Selenium是什么,流行的版本有哪些?
你怎样从命令行启动Selenium RC?
在我的呆板端口4444不是免费的。我怎样才气利用另一个端口?
什么是Selenium Server,它与Selenium Hub有什么不同?
你怎样从Selenium连接到数据库?
你怎样验证多个页面上存在的一个对象?
XPath中利用单斜杠和双斜杠有什么区别?
怎样编写SeleniumIDE/ RC的用户扩展?
怎样在页面加载成功后验证元素的存在?
你对Selenium Grid有什么了解?它提供了什么功能?
怎样从你的Java Class启动Selenium服务器?
Selenium中有哪些验证点?
什么是XPath?什么时间应该在Selenium中利用XPath?
…
盘算机与网络
一台盘算机的IP是192.168.10.71子网掩码255.255.255.64与192.168.10.201 …
请简述DNS、运动目次、域的概念。
10M兆宽带是什么意思?理论下载速度是多少?
什么是IP地点?
OSI七层网络模子的划分?
TCP和UDP有什么不同?
HTTP属于哪一层的协议?
HTTP和HTTPS的区别?
cookies和session的区别?
HTTP的get哀求和post哀求的区别?
HTTP1.0和HTTP1.1有什么区别
TCP的连接创建过程,以及断开过程?
客户端利用DHCP获取IP的过程?
写出某个网段的网络地点和广播地点?
…
人力资源
你的测试职业发展是什么?你自以为做测试的上风在那里?
你找工作时,最紧张的考虑因素为何?
为什么我们应该录取你?
请谈谈你个人的最大特色。
一个测试工程师应具备那些素质和技能?
还有问一下你是怎样包管软件质量的,也就是说你以为怎样才气最大限度地包管软件质量?
为什么选择测试这行?
如果我雇用你,你能给部分带来什么贡献?
文档获取方式:
这份文档,对于想从事【软件测试】的朋侪来说应该是最全面最完整的备战仓库,这个仓库也陪同我走过了最艰难的旅程,希望也能帮助到你!以上均可以分享,只需要你点下方进群即可。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |