时长:1h
base:成都
方式:腾讯会议视频面
首先是做个自我介绍,问我学的什么语言,是在学校学的还是自学的,掌握这门语言的情况如何?
【Java基础部分】
• String类可不可以被继承?定义字符串一般用什么?
• StringBuffer和StringBuilder用过没有?介绍一下
• 平时用Java一般用哪些类?我说一般用util下面的Map、List这些,面试官追问说集合用得比较多一点是吧,那你说一下List和Set的区别,具体有哪些方面的区别?在你平时用的时候,什么时候用Set什么时候用List?HashSet底层实现用的什么数据结构?面试官说是基于HashMap实现的。接着问你对HashMap了解吗?HashMap实现原理?你刚刚又提到链表又提到红黑树,它是用的两种吗?长度多少的时候进行转换?
• ArrayList你了解吗?说下它和LinkedList的区别是什么?ArrayList初始化容量是多少?它扩容每次扩容多大?能说下它扩容的这个过程吗?
• 你对Java的类了解吗?比如你说下普通类和抽象类的区别?普通类可不可以实例化?普通类能不能有子对象方法?
• 你对jvm了解吗?了解jvm的哪些东西?内存区域有哪些?堆里面一般存哪些东西?我说是缓冲区什么什么,面试官说堆里面存的是对象,你new的对象存在堆里面。你对jvm里的堆了解多少?我说垃圾回收器,面试官就让我说一下垃圾回收机制,垃圾回收算法有哪些?
• 对Spring了解吗?
【计算机网络部分】
• 你记得计算机网络哪些方面的知识?我:模型、协议、协议里的具体内容
• OSI七层模型有哪些?HTTP协议属于哪一层?网络层有哪些协议?
• IP协议能简单描述一下吗?
• 说一下HTTP常用的状态码有哪些?在我说了之后又让我说503和504
【数据结构部分】
• 常用的数据结构有哪些?
• 栈和队列区别是什么?
• 树的结构除了二叉树还有哪些?
• Mysql的底层是用的什么数据结构?
【数据库部分】
• 删除一个表的数据用什么?delete和truncate,我这还说了下他们的区别
【算法部分】
• 求字符串数组中,无相同字符的两个字符串,长度乘积的最大值:我使用的暴力求解,四层for循环面试官说优化的时候可以使用HashSet去重。还让我写了测试用例来输出,但是没有覆盖特别完全,测试用例没有很典型的对比。(我就写来测试下,没想到面试官的确要考察这个)
【唠嗑部分】
• 你是哪里人?
• 你们寝室几个人?你觉得你和寝室同学的关系怎么样?
• 你觉得你这个人抗压能力怎么样?
• 在你以往经历里面对你打击最大的是什么?你怎么克服的?(我说睡一觉就好了。。。。
【反问部分】
• 我说上次HR打电话过来说今天面试可能涉及到自动化测试的比较多,但是今天没有问到这方面的知识,而都是Java底层的东西。面试官说是我这简历上没有测试有关的东西(其实是有的,就一点),都是根据简历上来问的。HR说你很喜欢自动化测试吗?我说接触有限,不知道自己了不了解。后来HR继续问我技术问题了。。【见测试部分
• 部门技术栈?面试官:C#
• 部门做什么?面试官说他们部门偏开发,是做一个测试平台去执行测试用例。
【测试部分】
• 你对Java单元测试框架了解吗?TestNG的注解有哪些?
• 你平时写单元测试吗?你去了解过这些单元测试框架怎么实现的吗?TestNG原理是什么?怎么去找到这个测试方法的?单元测试入口是什么?
• 你批量执行一些单元测试的时候,有的是会执行的,有的是不会执行的,它是怎么来判断的?
总结:面试官会抓着简历上写的东西狠狠问,比如掌握哪些知识,都是问的核心。我感觉自己蛮不足的,八股背得不行,对于底层也不了解,这些都是我之后需要去努力的地方。感觉自己答得蛮差的,面试官肯定了我的性格说蛮需要我这种人,比较好沟通。不过我真的太菜了
#2023秋招提前批##Java##提前批##测试开发工程师##面经##秋招#