测试是干什么的,关于面试的问题,我选择的是软件测试?


风晓
风晓 2023-12-29 13:24:31 49769
分类专栏: 资讯

测试职业生涯

深陷外包测试的困境

在测试行业工作有 5 年多了,之前一直是在大厂做外包测试工作。外包测试的工作特点就是:一直跟业务深度绑定,在技术成长方面则提升缓慢。到了后期,就感觉总是在做重复的点点点工作,但无论业务还是个人职业发展都遇到瓶颈,无法突破。

其实本来计划在 2020 过完年就换一份工作的,但由于遇到疫情影响,跳槽计划就被耽搁了一段时间。在年中疫情开始有所缓解之后,就开始默默的投了一波简历。但基本上都是石沉大海,面试邀约寥寥无几,这时候才清醒的认识到残酷生活的真实面貌 —— 凭借自己目前的工作经历和测试技能,出去找到更好的工作真的很难:

  • 一方面,现在好一点的公司招测试,技能要求基本都是测试开发,自己技术实力还有很大差距;
  • 另一方面,好一点的职位,大厂更优先看重内推的人,面试成功率比海投更高,而我正缺乏这样的行业人脉;

幸运的是,这个时候看到了霍格沃兹测试学院的《Java 中高级测试开发名企定向培养计划》介绍信息,当时看到课程内容信息一下子就吸引了我,另外还有内推 BAT 名企服务也让我心花怒放。简单咨询之后,就毫不犹豫的报了名。

学院课程果然没有让我失望,有深度有广度,涵盖了大厂最主流的测试开发技术体系,内容丰富系统并且理论与实战相结合。有很多之前闻所未闻的知识,让我视野开阔并重新找到了学习的乐趣。

我最想分享的个人学习经验:一定要跟着视频练习,光看是没用的,自己动手做一遍才能知道哪里有坑,只有解决了问题才能真正内化为自己的知识。虽然整个过程很有挑战性,甚至是处于磕磕绊绊的状态,但还好我一直坚持学完了整个课程。

这边为你准备了200G软件测试教程资料,以及100+的名企大厂测试开发内推资源,免费分享给你,点击下方链接立即获取:
 
广告
点击添加微信,获取名企大厂测试岗位内推通道>>>
 
上课会记录电子笔记

从“被歧视”到“被认可”

在学习完霍格沃兹的全部课程之后,就开始寻求新的面试机会,学院也帮忙匹配内推合适的公司岗位。

虽然我的测试技术水平提升很大,整个人也自信了很多,但说实话,“外包测试”这个标签在面试时或多或少都会面试官被歧视,甚至是不公正待遇,尤其是一些小公司。我能真切的感到面试官看到是外包测试背景,态度上会有一些细微的转变,有的还会故意刁难。这也深深的刺痛了我,感觉自己的职业生涯都被外包耽误了

所以,在这奉劝大家一句:没有技术含量的外包测试真的能不去就不要去了,不得不去也不要做太久,尽快辞职,找更好的工作提升自己是正道!

再后来,又陆续面试了几家大厂,靠着在学院学到的测试开发实战技能,最终成功拿下某互联网大厂测试开发岗位 Offer,薪资涨幅 70%,也实现测试职业生涯质的飞跃

下面分享一下大厂面试中的一些印象深刻的高频题目,以及我个人的解答,仅供大家参考。

如果你是测试在职,觉得自己技术不错,这边组建了一个2021年名企大厂测开岗位内推群,去年已经内推200+的同学进入大厂,最高的年薪达到70W+,点击下方链接获取进群方式:
 
广告
点击添加微信,获取名企大厂测试岗位内推通道>>>
 

大厂测试开发面试真题

业务基础相关

  • 自我介绍
  • 测试流程
  • 项目介绍(结合自己的项目讲清楚是做什么的)
  • 入职后如何开展工作
  • 在测试项目中开发的提效工具

算法题

  1. 计算相同字符个数,并按个数排序,返回前 k 个(多家大厂的高频题目)
public static List sort(String arrs[], int k){
       Map<String, Integer> map = new HashMap<>();
       for (String arr : arrs) {
           map.put(arr, map.getOrDefault(map.get(arr), 1) + 1);
       }

       List<Map.Entry<String, Integer>> lists = new ArrayList<>(map.entrySet());
 //按map的value排序
       Collections.sort(lists, new Comparator<Map.Entry<String, Integer>>() {
           @Override
           public int compare(Map.Entry<String, Integer> o1, Map.Entry<String, Integer> o2) {
               return o2.getValue() - o1.getValue();
           }
       });

       List<String> list = new ArrayList<>();
       if (k > lists.size()){
           return list;
       }
       for (int i = 0 ; i < k ; i++){
           list.add("(" + lists.get(i).getKey() + "," + lists.get(i).getValue() + ")");
       }
       return list;
   }

2.返回 s2 在 s1 中的位置,要求不能使用 indexOf,并且输入任何字符串都能返回位置,如果没有,返回 0;

public static void main(String[] args) {
    String s1 = "www.taobao.com";
    String s2 = "taobao";
    Integer index = getPosition(s1, s2);
    System.out.println(index);
}

public static Integer getPosition(String s1, String s2){
    int  n = 0 ;
    if (s1.isEmpty() || s2.isEmpty()){
        return n;
    }
    int l1 = s1.length();
    int l2 = s2.length();
    for(int i = 0; i < l1 - l2 + 1; i++){
        String str = s1.substring(i, l2 + i) ;
        if(str.equals(s2)){
            return i;
        }
    }
    return n;
}

Java 相关题目

1.线程和进程的区别:

  • 一个进程可以包含多个线程
  • 线程是在进程的基础上创建并使用,所以线程依赖进程
  • 不同进程间数据很难共享,同一进程下不同线程间数据很易共享
  • 进程要比线程消耗更多的计算机资源
  • 线程启动速度比进程快很多,使用多线程进行并发处理的时候,执行效率要高于进程

2.List、Set、Map 区别:

  • List集合允许有重复数据,保存顺序即其存储顺序
  • set保存的顺序是无序的,且不能保存重复元素
  • map已key-value形式进行存在,为无序存储,key,value可为null,key不可重复

3.ArrayList 和 LinkedList 区别:

  • ArrayList 是数组实现的集合操作,LinkedList 是链表实现的集合操作;
  • 在使用 List 集合中的 get() 方法根据索引获取数据时,ArrayList 的时间复杂度为 O(1)”,而 LinkedList 的时间复杂度为 O(n);
  • LinkedList 没有提供初始化大小;ArrayList 使用时默认初始化大小长度为 10,在空间不足时,已 2 倍的形式进行扩容,如果保存大数据量的时候,会有垃圾的产生和性能的下降,这个时候可以使用 LinkedList 子类保存;

4.Overloading 和 Override区别:

No. 区别 Overloading Override
1 中文含义 重载 覆写
2 概念 方法名称相同,参数类型和个数不同 方法名称、参数的类型及个数、返回值相同
3 权限 没有权限限制 被覆写的方法不能拥有更严格的控制权限
4 范围 发生在一个类中 发生在继承关系类中

5.抽象类和接口区别:

No 区别 抽象类 接口
1 定义 abstract class 接口类名称{} Interface 接口名称{}
2 组成 构造、普通方法、静态方法、全局常量、普通成员、static方法 抽象方法、全局常量、普通方法、static方法
3 权限 可以使用各种权限 只能使用public
4 子类使用 子类通过extends可以继承一个抽象类 子类使用implements可以实现多个接口
5 两者关系 抽象类可以实现若干个接口 接口不允许继承抽象类,但是允许继承多个父接口
6 使用 抽象类或接口必须定义子类;子类一定要覆写抽象类或接口中的全部抽象方法;通过子类的向上转型实现抽象类或接口对象实例化;
No 区别 抽象类 接口
1 定义 abstract class 接口类名称{} Interface 接口名称{}
2 组成 构造、普通方法、静态方法、全局常量、普通成员、static方法 抽象方法、全局常量、普通方法、static方法
3 权限 可以使用各种权限 只能使用public
4 子类使用 子类通过extends可以继承一个抽象类 子类使用implements可以实现多个接口
5 两者关系 抽象类可以实现若干个接口 接口不允许继承抽象类,但是允许继承多个父接口
6 使用 抽象类或接口必须定义子类;子类一定要覆写抽象类或接口中的全部抽象方法;通过子类的向上转型实现抽象类或接口对象实例化;

 

No 区别 抽象类 接口
1 定义 abstract class 接口类名称{} Interface 接口名称{}
2 组成 构造、普通方法、静态方法、全局常量、普通成员、static方法 抽象方法、全局常量、普通方法、static方法
3 权限 可以使用各种权限 只能使用public
4 子类使用 子类通过extends可以继承一个抽象类 子类使用implements可以实现多个接口
5 两者关系 抽象类可以实现若干个接口 接口不允许继承抽象类,但是允许继承多个父接口
6 使用 抽象类或接口必须定义子类;子类一定要覆写抽象类或接口中的全部抽象方法;通过子类的向上转型实现抽象类或接口对象实例化;

 

No 区别 抽象类 接口
1 定义 abstract class 接口类名称{} Interface 接口名称{}
2 组成 构造、普通方法、静态方法、全局常量、普通成员、static方法 抽象方法、全局常量、普通方法、static方法
3 权限 可以使用各种权限 只能使用public
4 子类使用 子类通过extends可以继承一个抽象类 子类使用implements可以实现多个接口
5 两者关系 抽象类可以实现若干个接口 接口不允许继承抽象类,但是允许继承多个父接口
6 使用 抽象类或接口必须定义子类;子类一定要覆写抽象类或接口中的全部抽象方法;通过子类的向上转型实现抽象类或接口对象实例化;

 

6.Spring boot 常用注解:

  • @RestController
  • @RequestMapping("")
  • @GetMapping("")
  • @PostMapping("")
  • @Autowired
  • @Service
  • @RequestParam
  • @RequestBody
  • 手写 Spring 实现过程

7.数据库:

  • 增、删、改、查、连表查询
  • 基础必须要会(缓存、索引了解的不多,没答上来)
  • 查询每门课程成绩都大于60分学生(使用一条语句)
select name from 表 group by name having min(成绩)>=60

Liunx 相关

  • 三剑客:grep(最常考)、awk、sed(这里不列举了)

Selenium 相关

  • 元素的定位方法
  • id、name、xpath

PageObject 封装的思想

  • 只封装重要功能
  • 封装细节,只对外提供方法
  • 操作细节与断言不要混用

什么样的项目适合做 UI 自动化测试?

  • 项目稳定,不会频繁变更
  • 定期构建,比较频繁的回归验证
  • UI 界面稳定,变动少
  • 项目进度压力不大,维护周期长

总结

最后,真的非常感谢霍格沃兹测试学院,为我们提供了一套完整的测试开发技术体系精品课程,也感谢各位老师的讲解和答疑,也祝各位同学能够学有所成。

网站声明:如果转载,请联系本站管理员。否则一切后果自行承担。

本文链接:https://www.xckfsq.com/news/show.html?id=32128
赞同 0
评论 0 条
风晓L1
粉丝 1 发表 522 + 关注 私信
上周热门
如何使用 StarRocks 管理和优化数据湖中的数据?  2973
【软件正版化】软件正版化工作要点  2891
统信UOS试玩黑神话:悟空  2864
信刻光盘安全隔离与信息交换系统  2751
镜舟科技与中启乘数科技达成战略合作,共筑数据服务新生态  1285
grub引导程序无法找到指定设备和分区  1253
华为全联接大会2024丨软通动力分论坛精彩议程抢先看!  170
2024海洋能源产业融合发展论坛暨博览会同期活动-海洋能源与数字化智能化论坛成功举办  169
点击报名 | 京东2025校招进校行程预告  165
华为纯血鸿蒙正式版9月底见!但Mate 70的内情还得接着挖...  162
本周热议
我的信创开放社区兼职赚钱历程 40
今天你签到了吗? 27
信创开放社区邀请他人注册的具体步骤如下 15
如何玩转信创开放社区—从小白进阶到专家 15
方德桌面操作系统 14
我有15积分有什么用? 13
用抖音玩法闯信创开放社区——用平台宣传企业产品服务 13
如何让你先人一步获得悬赏问题信息?(创作者必看) 12
2024中国信创产业发展大会暨中国信息科技创新与应用博览会 9
中央国家机关政府采购中心:应当将CPU、操作系统符合安全可靠测评要求纳入采购需求 8

加入交流群

请使用微信扫一扫!