阿里十分钟(雾)简历评估面

1. 为什么不转正要来SH? 实话实说,还不是因为爱(sha). & 介绍目前实习负责的项目。

2. IOException和RuntimeException (果然基础太渣)

答:IOException属于非RuntimeException, 属于应用程序级别的异常,这类异常必须捕捉,在程序中必须使用try...catch进行处理。定义方法时必须声明所有可能会抛出的异常; 在调用这个方法时,必须捕获它的异常,不然就需要把它的Exception传递下去;非RuntimeException是从java.lang.Exception类衍生出来的。例如:IOException,SQLException,FileNotFound就属于非RuntimeException。

RuntimeException 是那些可能在 Java 虚拟机正常运行期间抛出的异常的超类,表示系统异常,比较严重,可以不使用try...catch进行处理,但是如果有异常产生,则异常将由JVM进行处理。对于RuntimeException的子类最好也使用异常处理机制。虽然RuntimeException的异常可以不使用try...catch进行处理,但是如果一旦发生异常,则肯定会导致程序中断执行,所以,为了保证程序再出错后依然可以执行,在开发代码时最好使用try...catch的异常处理机制进行处理。如果出现RuntimeException,那么一定是程序员的错误。在定义方法时不需要声明会抛出RuntimeException; 在调用这个方法时不需要捕获这个RuntimeException;RuntimeException是从java.lang.RuntimeException或java.lang.Error类衍生出来的。 例如:ArithmaticException, Nullpointexception,IndexOutOfBoundsException就属于RuntimeException.

阿里十分钟(雾)简历评估面_第1张图片

3. 从输入网址到显示页面中间发生了什么?

  • 在浏览器中输入url; 
  • 应用层DNS解析域名(发送至DNS服务器并获得域名对应的WEB服务器的IP地址); ---DNS解析过程,Nginx请求转发
  • 与WEB服务器建立TCP连接; ---连接建立和保持过程
  • 浏览器向WEB服务器的IP地址发送相应的HTTP请求; 
  • WEB服务器响应请求并返回指定URL的数据,或错误信息,如果设定重定向,则重定向到新的URL地址。 
  • 浏览器下载数据后解析HTML源文件,解析的过程中实现对页面的排版,解析完成后在浏览器中显示基础页面。---浏览器内容渲染 
  • 分析页面中的超链接并显示在当前页面,重复以上过程直至无超链接需要发送,完成全部显示。

阿里十分钟(雾)简历评估面_第2张图片

转载自:图解从输入网址到显示页面中间发生了什么(一)

三种不同的分析维度:https://www.jianshu.com/p/184ebd448c7f?mType=Group

4. 微信第三方登录和微信网页版扫码登录实现原理

(1)微信第三方登录过程:

  • 第三方发起微信授权登录请求,微信用户允许授权第三方应用后,微信会拉起应用或重定向到第三方网站,并且带上授权临时票据code参数;
  • 通过code参数加上AppID和AppSecret等,通过API换取access_token;
  • 通过access_token进行接口调用,获取用户基本数据资源或帮助用户实现基本操作。

(2)微信网页版扫码登陆实现原理

  • 打开网页版微信,会向微信服务器发送请求得到一个可唯一识别的uuid,用户生成登录二维码;
  • 当客户端扫码该二维码时,客户端获得了该二维码中的uuid,并且与自身的账号进行绑定;
  • 浏览器端获取了客户端已经登录的账号信息,并且进行显示(头像),继续等待客户端点击确认登录;
  • 客户端点击确认登录,将uuid+账号信息发送到微信服务器,微信服务器收到之后根据uuid找到该浏览器端的访问请求页面并且给出了访问令牌Token,随后网页版微信登录成功。

5. 在做接口测试的时候怎么处理异常呢?还有如何使用断言?

答:全部catch Exception(不过面试官原意不是如此吧。。。),断言就直接使用Response和assert的匹配值看是否equals就可以了,没有重新定义断言方法?。。。

6. 用java写一个断言?java做压力测试时需要生成很多数据,怎么用java实现?

答:不会写,难道不是用assert直接调用即可吗?没有做过压测,不了解,是直接使用rand随机生成不可以?还是要有固定的公式+rand()可保证无重复的意思?不懂面试官的意思。。。

7. 那你熟悉python是吧,我问个python的问题?(不不不熟悉,更熟悉java!)啊这样啊那我问个简单的Java的数组的排序,(心里凉凉的。。。)把a,b,c排序生成b,a,c如何实现?

答:意思等同于是把a,b,c,d变为c,b,a,d的意思吗?(按照你自己的理解来回答就成)(说好的阿里的面试官能引导思路呢,都是骗人的,哭)我就回答了末位保留,前置位反转。。。总感觉哪里不对。。。

8. 还有什么要问的吗?

答:用到的技术栈?(java啊)做的哪些方面的测试(全都有)。。。。(笑:是不是没什么要问得了)(其实还有好多:你们的主要工作内容啊,据说在SH中心真好)对面试评价(话还没说完,来了句后续HR会联系你)(什么意思?不懂。。。但是实在不好意思再问了,一方面太菜了,另一方面也太晚了都快11点了小姐姐要赶紧下班鸭)

 

总结:个人基础还是很重要,多看面经多看基础记牢了。能刷题的话还是要多刷题,最后,心里暗自猜度一把希望面试官眼瞎能看在我能非常吃苦加班熬夜的份上就要了我吧【拜托拜托

                                                                                                                                             2018年8月3日晚10点面试内容呈上

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(测试)