女朋友要去BAT大厂面试,我找测试大牛给她“精讲”了这些面试必背题,刚面试完到家就按捺不住了···
Posted 软件测试小dao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了女朋友要去BAT大厂面试,我找测试大牛给她“精讲”了这些面试必背题,刚面试完到家就按捺不住了···相关的知识,希望对你有一定的参考价值。
面试这件事吧!90%的打工人还循环在投简历-初试-不合格的怪圈里,几个月都拿不到Offer,而有的人就像得到上天的眷顾一样,已经手握字节、京东、阿里等多家名企Offer,迈入年薪30W+的高薪生活。
最近女朋友准备去BAT大厂面试了,找我要一些面试题,我在给她这些面试题的同时还给她找了测试大牛来详细讲解一些重要的面试题,收获颇丰。当天面试回来就给我一个大大的奖励。具体是什么就不多说了。
接下来看看测试大牛给大家精讲的这些自动化面试必背题!
首先
大家看一看这十个问题能答出几个?
三种等待时间的区别和场景应用?
强制等待、隐式等待、显示等待。
第一个强制等待:就是说,当我去点击输入用户名字的这一行代码
(这是一个输入用户名字的一行代码)
当我把这两行代码
放到这里
不管你这个元素,有没有在页面出现我都等3秒,我再去操作它。是强制,命令式的。但是这些往往一般都只用在脚本的调试,不会真正的出现在自动化测试用例中。你想一想,一个用例十行你加了十个,一个等三秒那十个等三十秒,一个用例三十秒是不可取的。
第二个
隐式等待:一般用在什么地方呢?
红框里的这个就是隐式等待。
比如说隐式等待它是一个什么样的区别?就是说你不管点哪里它只要写一次就可以了。像time.sleep(3)你每次都要去写,像driver .implicitly_wait( 3)#一次就好了。它每次去点都会等待三秒,那中间这个三秒它在等什么呢?
重点来了,一个页面它可能有非常多的图片,jss、css、img。就是再加载jss的图片。举个例子我想点击搜索按钮
隐式等待的三秒钟就是在等待这个页面的所有js和图片加载出来。就算你搜索按钮出来了,我还要去等js、img加载完成。理解了吗?软件测试全栈内容欢迎来公众号程序员一凡交流学习。那么如果三秒钟之类jss、css没有加载完成我还是不会去点你,这就是一个隐式等待。它虽然很方便但是有瑕疵。
第三个:
那么什么叫显示等待呢?
字面意思就是和隐式等待相反。一个是隐藏的一个是非常明显的,我想要去做什么就做什么,不需要等待。
当这个搜索按钮一显示出来,我马上就去点它。
我不管页面的其他LOGO、图片有没有加载出来,只要我的想要的比如搜索按钮出来了,我就马上去点击它。
这个题目是做自动化测试非常重要也非常基础的问题,所以我把这个问题排在了第一。
这个问题以后被问到,就难不到你了。
听懂了的朋友,点赞支持一波啊~
之前项目做过自动化测试吗?如何推进的?
工资想超过15K,这个问题是必问的!
不要看这个问题很简单?这个问题其实有点难度的。面试官问你有没有做过自动化测试,那么你肯定不能简单的说:额~我做过!
你要告诉面试官,你如何自动化开展到推进。如何推进的非常重要,你如何开始自动化入和推进,咱们不要片面的去回答,会或者不会。
比如你这样回答:我会,之前公司我们的项目接口方面,前端UI方面我是用selenium这个开源框架加上Python基础架构来实现我的自动化来实现的。
实现原理:用一些单元测试框架unittest去组织我们的测试用例,(或者用Pytest)
数据驱动:比如说我们用execl表去做一个数据驱动,然后我们用到一些关键字驱动,还有你在做自动化你遇到哪一些问题,大家一定要准备几个自动化遇到的问题!这个即使你不说,也是必问的!然后就是这些问题你是如何解决的。
给大家分享一个公式:
如何解决这些问题呢
对你公司项目产生了什么样的价值?像我去面试的时候,我就会说成为我们公司的一个固定资产。
不管是开发、产品、运营,都会用到咱们的这个自动化脚本。可以帮我们线上监控,帮我们自动化回归,帮我们造数据,帮我们跑数据,提高了迭代效率,释放了很多人力。
自动化测试有什么用?
很多做软件测试的同行,他没有用过确实感受不到。我之前开始做自动化的时候,在一个人工智能的公司。产品上线之前,CTO只问我一句话,能不能上?因为我这边有很多自动化项目已经不停的在回归,然后功能测试也测了。所以功能+自动化结合就能很自信的上线。它校验出了很多隐藏的BUG,很多因为代码提交、新功能的开发产品的BUG。
谈谈你对自动化分层思想的理解?
其实这句话,经常会被写到一些大型招聘网上去。你会自动化而且还要会自动化分层思想。
做自动化和做功能测试一样,那么它分为哪些东西?
第一个:自动化用例它有一个业务层/业务逻辑
比如登录的业务逻辑是什么?
输入用户名-输入密码-点击登录按钮
分层:
业务逻辑
关键字驱动:
业务层的关键字,比如说你登录,那么你要去做其他的用例是不是会用到登录这个关键字。这个业务也封装成一个关键字,你其他的一个用例是不是可以用到它了?那接口,接口之间不是有很多的关联对吧,如果你把下单这些接口弄在一起,退货发货这些弄在一起,这就是一个业务层的关键字。
关键字驱动不仅有业务层,还有逻辑层。比如说你需要用到很多的公共方法,比如说随机数、随机号码、数据库等等。大家都能用到的,就都封装成一个关键字。
二次封装
click()
有时候我们需要根据需求去二次封装。
关键字驱动不仅仅这三层。还有很多东西要分层,很多驱动、第三方的库、日志、页面、图片、报告等等……
数据驱动
配置文件
自动化用例在什么环境下运行、如何批量运行?
能对公司真正的产生效益的自动化肯定是成千上万级别的用例。如果没有达到这个级别,收益一定是很小的。既然是机器在运行的,为什么不去覆盖全面呢?
在这里给大家推荐一个docker容器技术+jenkins定时构建+git
你的代码放在git上面然后用jenkins去关联定时构建,docker保证你的自动化干净的环境(虚拟机的进阶版)运行还可以分布式运行。git(版本管理)可以关注一下我之前分享的视频2021当下最新主流的软件测试技术分享。还有更多软件测试实战视频详解。都是现在主流火爆的技术。
我们不管学什么技术,结合实战、自动化应用。很多朋友想学测试开发、测试平台,你自动化、接口、框架你都不会,你谈何去学测试开发?那是不大现实的。
经常有人问题,学习软件测试有什么捷径?
学习一步一步来,有计划性的,不走弯路!就是最大的捷径。
更多自动化测试面试题视频详解可以关注公众号软件测试小dao
最后:【可能给予你帮助】
这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你
需要领取简历模板制作视频讲解以及面试交流技巧的关注我的微信公众号【软件测试小dao】免费获取~
我的学习交流群:1033482984 群里有技术大牛一起交流分享~
如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!
以上是关于女朋友要去BAT大厂面试,我找测试大牛给她“精讲”了这些面试必背题,刚面试完到家就按捺不住了···的主要内容,如果未能解决你的问题,请参考以下文章
CSDN首发!我找遍了全网,总结出足足60W字“阿里大厂面试手册”老实人版