測(cè)試人生 | 資深外包逆襲大廠測(cè)試開(kāi)發(fā):面試官的“歧視”表情深深刺

圖片

編者按:本文是霍格沃茲測(cè)試學(xué)院優(yōu)秀學(xué)員 @TM20N 的分享埋心,從“被歧視”的資深外包人員到“被認(rèn)可”的 BAT 大廠測(cè)試開(kāi)發(fā),他的技術(shù)成長(zhǎng)、心路歷程和職業(yè)發(fā)展忠告值得每位外包同學(xué)學(xué)習(xí)!

測(cè)試職業(yè)生涯

深陷外包測(cè)試的困境

在測(cè)試行業(yè)工作有 5 年多了灾炭,之前一直是在大廠做外包測(cè)試工作。外包測(cè)試的工作特點(diǎn)就是:一直跟業(yè)務(wù)深度綁定颅眶,在技術(shù)成長(zhǎng)方面則提升緩慢。到了后期田弥,就感覺(jué)總是在做重復(fù)的點(diǎn)點(diǎn)點(diǎn)工作涛酗,但無(wú)論業(yè)務(wù)還是個(gè)人職業(yè)發(fā)展都遇到瓶頸,無(wú)法突破偷厦。

其實(shí)本來(lái)計(jì)劃在 2020 過(guò)完年就換一份工作的商叹,但由于遇到疫情影響,跳槽計(jì)劃就被耽擱了一段時(shí)間只泼。在年中疫情開(kāi)始有所緩解之后剖笙,就開(kāi)始默默的投了一波簡(jiǎn)歷。但基本上都是石沉大海请唱,面試邀約寥寥無(wú)幾弥咪,這時(shí)候才清醒的認(rèn)識(shí)到殘酷生活的真實(shí)面貌 —— 憑借自己目前的工作經(jīng)歷和測(cè)試技能过蹂,出去找到更好的工作真的很難:

  • 一方面,現(xiàn)在好一點(diǎn)的公司招測(cè)試聚至,技能要求基本都是測(cè)試開(kāi)發(fā)酷勺,自己技術(shù)實(shí)力還有很大差距;
  • 另一方面扳躬,好一點(diǎn)的職位脆诉,大廠更優(yōu)先看重內(nèi)推的人,面試成功率比海投更高贷币,而我正缺乏這樣的行業(yè)人脈击胜;

幸運(yùn)的是,這個(gè)時(shí)候看到了霍格沃茲測(cè)試學(xué)院的《Java 中高級(jí)測(cè)試開(kāi)發(fā)名企定向培養(yǎng)計(jì)劃》介紹信息役纹,當(dāng)時(shí)看到課程內(nèi)容信息一下子就吸引了我偶摔,另外還有內(nèi)推 BAT 名企服務(wù)也讓我心花怒放。簡(jiǎn)單咨詢之后字管,就毫不猶豫的報(bào)了名啰挪。

學(xué)院課程果然沒(méi)有讓我失望,有深度有廣度嘲叔,涵蓋了大廠最主流的測(cè)試開(kāi)發(fā)技術(shù)體系亡呵,內(nèi)容豐富系統(tǒng)并且理論與實(shí)戰(zhàn)相結(jié)合。有很多之前聞所未聞的知識(shí)硫戈,讓我視野開(kāi)闊并重新找到了學(xué)習(xí)的樂(lè)趣锰什。

我最想分享的個(gè)人學(xué)習(xí)經(jīng)驗(yàn):一定要跟著視頻練習(xí),光看是沒(méi)用的丁逝,自己動(dòng)手做一遍才能知道哪里有坑汁胆,只有解決了問(wèn)題才能真正內(nèi)化為自己的知識(shí)。雖然整個(gè)過(guò)程很有挑戰(zhàn)性霜幼,甚至是處于磕磕絆絆的狀態(tài)嫩码,但還好我一直堅(jiān)持學(xué)完了整個(gè)課程。

圖片
圖片

上課會(huì)記錄電子筆記

從“被歧視”到“被認(rèn)可”

在學(xué)習(xí)完霍格沃茲的全部課程之后罪既,就開(kāi)始尋求新的面試機(jī)會(huì)铸题,學(xué)院也幫忙匹配內(nèi)推合適的公司崗位。

雖然我的測(cè)試技術(shù)水平提升很大琢感,整個(gè)人也自信了很多丢间,但說(shuō)實(shí)話,“外包測(cè)試”這個(gè)標(biāo)簽在面試時(shí)或多或少都會(huì)面試官被歧視驹针,甚至是不公正待遇烘挫,尤其是一些小公司。我能真切的感到面試官看到是外包測(cè)試背景柬甥,態(tài)度上會(huì)有一些細(xì)微的轉(zhuǎn)變饮六,有的還會(huì)故意刁難其垄。這也深深的刺痛了我,感覺(jué)自己的職業(yè)生涯都被外包耽誤了喜滨。

所以捉捅,在這奉勸大家一句:沒(méi)有技術(shù)含量的外包測(cè)試真的能不去就不要去了,不得不去也不要做太久虽风,盡快辭職棒口,找更好的工作提升自己是正道!

再后來(lái)辜膝,又陸續(xù)面試了幾家大廠无牵,靠著在學(xué)院學(xué)到的測(cè)試開(kāi)發(fā)實(shí)戰(zhàn)技能,最終成功拿下某互聯(lián)網(wǎng)大廠測(cè)試開(kāi)發(fā)崗位 Offer厂抖,薪資漲幅 70%茎毁,也實(shí)現(xiàn)測(cè)試職業(yè)生涯質(zhì)的飛躍忆某。

下面分享一下大廠面試中的一些印象深刻的高頻題目朱浴,以及我個(gè)人的解答,僅供大家參考捕仔。

大廠測(cè)試開(kāi)發(fā)面試真題

業(yè)務(wù)基礎(chǔ)相關(guān)

  • 自我介紹
  • 測(cè)試流程
  • 項(xiàng)目介紹(結(jié)合自己的項(xiàng)目講清楚是做什么的)
  • 入職后如何開(kāi)展工作
  • 在測(cè)試項(xiàng)目中開(kāi)發(fā)的提效工具

算法題

  1. 計(jì)算相同字符個(gè)數(shù)墙懂,并按個(gè)數(shù)排序橡卤,返回前 k 個(gè)(多家大廠的高頻題目)

<pre style="margin: 10px 0px; padding: 0px; max-width: 100%; color: rgb(63, 63, 63); font-size: 14px; font-style: normal; font-weight: normal; letter-spacing: 0.476px; text-align: left; text-indent: 0px; text-transform: none; widows: 2; background-color: rgb(255, 255, 255); border-radius: 5px; box-shadow: rgba(0, 0, 0, 0.55) 0px 2px 10px; box-sizing: border-box; overflow-wrap: break-word;">`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;

}` </pre>

  1. 返回 s2 在 s1 中的位置,要求不能使用 indexOf损搬,并且輸入任何字符串都能返回位置碧库,如果沒(méi)有,返回 0巧勤;

<pre style="margin: 10px 0px; padding: 0px; max-width: 100%; color: rgb(63, 63, 63); font-size: 14px; font-style: normal; font-weight: normal; letter-spacing: 0.476px; text-align: left; text-indent: 0px; text-transform: none; widows: 2; background-color: rgb(255, 255, 255); border-radius: 5px; box-shadow: rgba(0, 0, 0, 0.55) 0px 2px 10px; box-sizing: border-box; overflow-wrap: break-word;">`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;
}` </pre>

Java 相關(guān)題目

  1. 線程和進(jìn)程的區(qū)別:
  • 一個(gè)進(jìn)程可以包含多個(gè)線程
  • 線程是在進(jìn)程的基礎(chǔ)上創(chuàng)建并使用嵌灰,所以線程依賴進(jìn)程
  • 不同進(jìn)程間數(shù)據(jù)很難共享,同一進(jìn)程下不同線程間數(shù)據(jù)很易共享
  • 進(jìn)程要比線程消耗更多的計(jì)算機(jī)資源
  • 線程啟動(dòng)速度比進(jìn)程快很多颅悉,使用多線程進(jìn)行并發(fā)處理的時(shí)候沽瞭,執(zhí)行效率要高于進(jìn)程
  1. List、Set剩瓶、Map 區(qū)別:
  • List集合允許有重復(fù)數(shù)據(jù)秕脓,保存順序即其存儲(chǔ)順序
  • set保存的順序是無(wú)序的,且不能保存重復(fù)元素
  • map已key-value形式進(jìn)行存在儒搭,為無(wú)序存儲(chǔ),key芙贫,value可為null搂鲫,key不可重復(fù)
  1. ArrayList 和 LinkedList 區(qū)別:
  • ArrayList 是數(shù)組實(shí)現(xiàn)的集合操作,LinkedList 是鏈表實(shí)現(xiàn)的集合操作磺平;
  • 在使用 List 集合中的 get() 方法根據(jù)索引獲取數(shù)據(jù)時(shí)魂仍,ArrayList 的時(shí)間復(fù)雜度為 O(1)”拐辽,而 LinkedList 的時(shí)間復(fù)雜度為 O(n);
  • LinkedList 沒(méi)有提供初始化大胁磷谩俱诸;ArrayList 使用時(shí)默認(rèn)初始化大小長(zhǎng)度為 10,在空間不足時(shí)赊舶,已 2 倍的形式進(jìn)行擴(kuò)容睁搭,如果保存大數(shù)據(jù)量的時(shí)候,會(huì)有垃圾的產(chǎn)生和性能的下降笼平,這個(gè)時(shí)候可以使用 LinkedList 子類保存园骆;
  1. Overloading 和 Override區(qū)別:

|

No.

|

區(qū)別

|

Overloading

|

Override

|
|

1

|

中文含義

|

重載

|

覆寫

|
|

2

|

概念

|

方法名稱相同,參數(shù)類型和個(gè)數(shù)不同

|

方法名稱寓调、參數(shù)的類型及個(gè)數(shù)锌唾、返回值相同

|
|

3

|

權(quán)限

|

沒(méi)有權(quán)限限制

|

被覆寫的方法不能擁有更嚴(yán)格的控制權(quán)限

|
|

4

|

范圍

|

發(fā)生在一個(gè)類中

|

發(fā)生在繼承關(guān)系類中

|

  1. 抽象類和接口區(qū)別:

|

No

|

區(qū)別

|

抽象類

|

接口

|
|

1

|

定義

|

abstract class 接口類名稱{}

|

Interface 接口名稱{}

|
|

2

|

組成

|

構(gòu)造、普通方法夺英、靜態(tài)方法晌涕、全局常量、普通成員痛悯、static方法

|

抽象方法余黎、全局常量、普通方法灸蟆、static方法

|
|

3

|

權(quán)限

|

可以使用各種權(quán)限

|

只能使用public

|
|

4

|

子類使用

|

子類通過(guò)extends可以繼承一個(gè)抽象類

|

子類使用implements可以實(shí)現(xiàn)多個(gè)接口

|
|

5

|

兩者關(guān)系

|

抽象類可以實(shí)現(xiàn)若干個(gè)接口

|

接口不允許繼承抽象類驯耻,但是允許繼承多個(gè)父接口

|
|

6

|

使用

|

  • 抽象類或接口必須定義子類;

  • 子類一定要覆寫抽象類或接口中的全部抽象方法炒考;

  • 通過(guò)子類的向上轉(zhuǎn)型實(shí)現(xiàn)抽象類或接口對(duì)象實(shí)例化可缚;

|

  1. Spring boot 常用注解:
  • @RestController
  • @RequestMapping("")
  • @GetMapping("")
  • @PostMapping("")
  • @Autowired
  • @Service
  • @RequestParam
  • @RequestBody
  • 手寫 Spring 實(shí)現(xiàn)過(guò)程
  1. 數(shù)據(jù)庫(kù):
  • 增、刪斋枢、改帘靡、查、連表查詢
  • 基礎(chǔ)必須要會(huì)(緩存瓤帚、索引了解的不多描姚,沒(méi)答上來(lái))
  • 查詢每門課程成績(jī)都大于60分學(xué)生(使用一條語(yǔ)句)

<pre style="margin: 10px 0px; padding: 0px; max-width: 100%; color: rgb(63, 63, 63); font-size: 14px; font-style: normal; font-weight: normal; letter-spacing: 0.476px; text-align: left; text-indent: 0px; text-transform: none; widows: 2; background-color: rgb(255, 255, 255); border-radius: 5px; box-shadow: rgba(0, 0, 0, 0.55) 0px 2px 10px; box-sizing: border-box; overflow-wrap: break-word;">select name from 表 group by name having min(成績(jī))>=60 </pre>

Liunx 相關(guān)

  • 三劍客:grep(最常考)戈次、awk轩勘、sed(這里不列舉了)

Selenium 相關(guān)

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

PageObject 封裝的思想

  • 只封裝重要功能
  • 封裝細(xì)節(jié)绊寻,只對(duì)外提供方法
  • 操作細(xì)節(jié)與斷言不要混用

什么樣的項(xiàng)目適合做 UI 自動(dòng)化測(cè)試?

  • 項(xiàng)目穩(wěn)定,不會(huì)頻繁變更
  • 定期構(gòu)建澄步,比較頻繁的回歸驗(yàn)證
  • UI 界面穩(wěn)定冰蘑,變動(dòng)少
  • 項(xiàng)目進(jìn)度壓力不大,維護(hù)周期長(zhǎng)

總結(jié)

最后村缸,真的非常感謝霍格沃茲測(cè)試學(xué)院祠肥,為我們提供了一套完整的測(cè)試開(kāi)發(fā)技術(shù)體系精品課程,也感謝各位老師的講解和答疑梯皿,也祝各位同學(xué)能夠?qū)W有所成仇箱。祝大家在新的一年,所求皆所愿索烹,所行化坦途工碾!

(文章來(lái)源于霍格沃茲測(cè)試學(xué)院)

更多技術(shù)文章可點(diǎn)擊http://qrcode.testing-studio.com/f?from=jianshu&url=https://ceshiren.com/t/topic/3822

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市百姓,隨后出現(xiàn)的幾起案子渊额,更是在濱河造成了極大的恐慌,老刑警劉巖垒拢,帶你破解...
    沈念sama閱讀 222,252評(píng)論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件旬迹,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡求类,警方通過(guò)查閱死者的電腦和手機(jī)奔垦,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,886評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)尸疆,“玉大人椿猎,你說(shuō)我怎么就攤上這事∈偃酰” “怎么了犯眠?”我有些...
    開(kāi)封第一講書人閱讀 168,814評(píng)論 0 361
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)症革。 經(jīng)常有香客問(wèn)我筐咧,道長(zhǎng),這世上最難降的妖魔是什么噪矛? 我笑而不...
    開(kāi)封第一講書人閱讀 59,869評(píng)論 1 299
  • 正文 為了忘掉前任量蕊,我火速辦了婚禮,結(jié)果婚禮上艇挨,老公的妹妹穿的比我還像新娘残炮。我一直安慰自己,他們只是感情好缩滨,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,888評(píng)論 6 398
  • 文/花漫 我一把揭開(kāi)白布吉殃。 她就那樣靜靜地躺著辞居,像睡著了一般。 火紅的嫁衣襯著肌膚如雪蛋勺。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書人閱讀 52,475評(píng)論 1 312
  • 那天鸠删,我揣著相機(jī)與錄音抱完,去河邊找鬼。 笑死刃泡,一個(gè)胖子當(dāng)著我的面吹牛巧娱,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播烘贴,決...
    沈念sama閱讀 41,010評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼禁添,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了桨踪?” 一聲冷哼從身側(cè)響起老翘,我...
    開(kāi)封第一講書人閱讀 39,924評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎锻离,沒(méi)想到半個(gè)月后铺峭,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,469評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡汽纠,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,552評(píng)論 3 342
  • 正文 我和宋清朗相戀三年卫键,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片虱朵。...
    茶點(diǎn)故事閱讀 40,680評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡莉炉,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出碴犬,到底是詐尸還是另有隱情絮宁,我是刑警寧澤,帶...
    沈念sama閱讀 36,362評(píng)論 5 351
  • 正文 年R本政府宣布翅敌,位于F島的核電站羞福,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏蚯涮。R本人自食惡果不足惜治专,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,037評(píng)論 3 335
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望遭顶。 院中可真熱鬧张峰,春花似錦、人聲如沸棒旗。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 32,519評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至饶深,卻和暖如春餐曹,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背敌厘。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 33,621評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工台猴, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人俱两。 一個(gè)月前我還...
    沈念sama閱讀 49,099評(píng)論 3 378
  • 正文 我出身青樓饱狂,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親宪彩。 傳聞我的和親對(duì)象是個(gè)殘疾皇子休讳,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,691評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容