1. 程式人生 > >送給那些有程式碼基礎但仍舊不會學自動化測試的朋友們

送給那些有程式碼基礎但仍舊不會學自動化測試的朋友們

百度搜索:小強測試品牌

交流群:165380836

我經常遇到這樣的場景:老師,我有python or java基礎,但還是不知道怎麼寫程式碼?老師,我有程式碼基礎,簡單的不用學,我想學高階的。老師,我有程式設計基礎,但是我看不懂程式碼。。。。。。諸如此類的問題,我想大家也一定有這些內心的OS

面對這樣的場景,這樣的問題,我也問了不少童鞋,得到的答案其實聽悲哀的。莫過於說些程式碼太難了,不會不懂;這個程式碼寫的不詳細導致我看不懂;我有程式設計基礎的,是你寫的程式碼太爛了。。。。。諸如此類把問題全部歸於他因的。。。可悲之處明理之人應該懂的了。。。。

好了,言歸正傳吧,就類似於這樣的問題我這裡統一說說我的想法和學習技巧吧,有不對的地方請多多包涵,我也是low逼之人,所以難免也有說的不對不妥的地方,喜歡贊之、轉之,不喜歡笑之、棄之即可。

1、學習自動化測試,或者說些程式碼,核心是學習思想,實現一個框架或功能的思想,沒有這個思想你就算會77種程式語言都沒卵用。那這裡說的思想是什麼呢?舉個栗子,你想完成一個從excel讀取使用者名稱和密碼並進行登入的case,你要怎麼設計,這就是思路。

大部分我見的童鞋包括我帶的學員,一上來就是寫程式碼,其實這是最忌諱的,構思邏輯、程式碼結構才是第一步,最後一步才是寫程式碼,本末倒置,你說能寫的出來嗎?

2、所謂我有編碼基礎,在我碰到的大部分人中,可以解讀為我學會程式設計,但現在忘了,我會hello world,這個不算有基礎,撐死算有編碼的概念而已。這也就是你為啥寫不出來,看不懂的最根本原因。

上面指出了大家的問題,那麼接下來就I看看應對方法。這裡我特別想多說一句:能真誠的給你指出問題的人值得感恩(雖然刺耳),多去提升自己的不足少去抱怨別人的不好是使你成為大神最快的捷徑。

學習自動化測試或程式設計基本的路徑:

第一條:認知(包括概念,意義等)>熟悉某一門程式語言(python or java)>從簡單固定的例子開始不斷練習(跑起來最重要,理解最不重要)>練習中培養自己解決問題的思路(理解的過程)>組織更復雜的框架>不斷總結

第二條:模仿>跑起來>理解>轉換為自己的

1、自動化測試的認知我就不多說了,在我的新書《小強軟體測試瘋狂講義》中已經詳細說過了

2、熟悉一門程式語言,注意我的用詞是熟悉,不是知道,不是瞭解,不是會hello world,而是你可以熟練的隨便寫一個簡單的demo出來,掌握了一般的程式設計、除錯方法。至於大家糾結的學python還是java,沒所謂的,都可以,你喜歡哪個就學哪個,有java基礎的就學java,沒有的學python入門會快點。程式語言這個東西本質都一樣,只是語法有差異,思想都想通的。

3、不要看不上簡單的例子,有多少人口口聲聲說的我有程式碼基礎,結果卻學的一塌塗地。。。。用個詞語形容:眼高手低。學程式碼就要先模仿,讓程式碼跑起來,然後再去理解。很多童鞋一上來就要理解理解,為什麼為什麼,程式碼都沒跑起來理解各毛線啊,為什麼個p啊(sorry,情不自禁的爆粗口了,哈哈,原諒我的任性)

這和你學開車一樣,模仿,練習,慢慢的明白汽車的各個原理,加什麼油,為什麼後排中間有突起啥的了。我經常和我的學員說,學習最忌諱的是開始就陷入細節,一味追求理解。因為很多所謂的理解是需要你有足夠的知識、閱歷和經歷沉澱才能做到的!

4、回到上面問的那個登陸的問題,我們就說說核心的思想。拿到這個問題不是去實現寫程式碼,而是去想實現他的思路和構成,這個過程不涉及具體的細節,不考慮是否能真的實現。我們來看下這個過程:

a、拆分問題。本題可拆分為python讀取excel(還要考慮excel怎麼設計更方便讀取)、讀取出來的資料如何儲存、儲存之後的資料如何放到對應的使用者名稱和密碼上

b、逐步實現。以selenium為例,先把使用者名稱和密碼元素識別出來且寫死資料,至少保證程式碼可以執行起來。不要上來就想我使用者名稱要是好幾個怎麼實現呀。一個寫死的使用者名稱你都沒跑起來程式碼想那麼多幹毛線啊。

c、實現python讀取excel資料並儲存

d、用讀取儲存的資料去替換對應的使用者名稱和密碼

e、完善程式碼加入異常處理機制。不要一開始就想報錯了怎麼辦,使用者名稱密碼不對了怎麼辦,測試的基本思想怎麼關鍵時間都丟失了呢。。。做功能測試我們都知道先正,後反啊,怎麼到了寫程式碼的時候就忘記了呢。

f、執行好了,理解了,可以慢慢在優化,比如加入unittest、htmlreport等

在整個上述的過程中,很多程式碼都是固定的,比如unittest的用法格式就是固定的,先記住怎麼用,用起來再說。很多人老學別人去看原始碼,你的有一定基礎了才行啊,不然看原始碼簡直是雪上加霜。

最後,學習是一個過程,是一個步驟,和生成一輛汽車一樣,不要跳著學習,能跳級的童鞋畢竟是少數,踏踏實實的一步步學,越往後你會發現效率越高,有時候我們以為的我們以為真的不是我們以為的那樣。。。。。。就和你開車,你的先讓車跑起來才能想怎麼變道安全,怎麼超車安全,怎麼側方停車啊。。。。

PS:有些東西文字不好表達,還的靠大家意會。。。。。。。幸苦大家了

感覺有收穫就點個贊,轉發下唄

相關推薦

送給那些程式碼基礎仍舊自動化測試朋友

百度搜索:小強測試品牌 交流群:165380836 我經常遇到這樣的場景:老師,我有python or java基礎,但還是不知道怎麼寫程式碼?老師,我有程式碼基礎,簡單的不用學,我想學高階的。老師,我有程式設計基礎,但是我看不懂程式碼。。。。。。諸如此類的問題,我想大

資料庫資料,查詢到資料,沒查到還爆空指標

              今天在做springMVC專案的時候,因為粗心,忘了在控制層注入service的類上面加上@Autowired,執行程式碼就一直報空指標,把hql翻譯成sql放入資料庫查詢

什麼情況下索引,上?

索引並不是時時都會生效的,比如以下幾種情況,將導致索引失效:如果條件中有or,即使其中有部分條件帶索引也不會使用(這也是為什麼儘量少用or的原因),例子中user_id無索引注意:要想使用or,又想讓索引生效,只能將or條件中的每個列都加上索引2.對於多列索引,不是使用的第一

資料庫資料,查詢

select * from T_AGW_CNL where corp_cnl = 'AJ01' and enb_flg='1';資料庫中有資料,但是就是查不到,很是納悶但是點開corp_cnl欄位,

那些我看了第一段點'X'的前端資料【持續更新】

一、HTML CSS篇 用CSS變形建立圓形導航 Bootstrap 3 & 4的區別 二、JavaScript篇 js高階函式map、reduce、filter、sort JavaScript中的call、apply、bind深入

程式能看懂,就是

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

Java語法基礎梳理,的小白快來看看了

Java 概述 1991 年Sun公司的James Gosling(詹姆斯·高斯林)等人開始開發名稱為 Oak 的語言,希望用於控制嵌入在有線電視交換盒、PDA等的微處理器;1994年將Oak語言更名為Java; 基本概念 JDK Java Development Kit,jav

js中input可以聯動顯示,label

js中input可以聯動顯示,但label不會 編者:李國帥 qq:9611153 微信lgs9611153 時間:2008-10-13 14:35 背景原因: 很久之前碰到的問題,覺得有意思分享一下。 Input和label標籤如果使用js的方式進行更改,label不能馬上

只適合零基礎、在職人員的專案自動化測試學習課程

為了更好能夠掌握的學習方法、提升自動化測試學習能力,限加入學習小組內成員參與學習。課程主題:基於pthon + selenium Web專案自動化測試一、課程時間:6月4日-8日二、課程亮點:1.基於python + Selenium的Web自動化技術2.DDT資料驅動架構、

了這兩款小程式,可以讓朋友刮目相看喲

引言:隨著高科技和全球經濟一體化的迅猛發展,掌握一門或幾門外語已經成為現在工作和生活中的一項必要技能。那麼,如何更好學習外語知識呢?今天小編為大家推薦兩款實時語音翻譯類小程式,讓大家在和外國友人交流時,也會感到毫無壓力,周圍的朋友也會對你刮目相看喲。藍星翻譯藍星翻譯是一款可支

🔥《手把手教你》系列基礎篇之3-python+ selenium自動化測試-驅動瀏覽器和元素定位大法(詳細)

1. 簡介 上一篇中,只是簡單地一帶而過的說了一些驅動瀏覽器,這一篇繼續說說驅動瀏覽器,然後再說一說元素定位的方法。 完成環境的安裝並測試之後,我們對Selenium有了一定的瞭解了,接下來我們繼續驅動瀏覽器做一些基本操作: 視窗尺寸設定、網頁截圖、重新整理、前進和後退 2. 視窗尺寸設定 在測試過程中,我們

java基礎面試題:try{}裏一個return語句,那麽緊跟在這個try後的finally {}裏的code被執行,什麽時候被執行,在return前還是後?

nal java pan clas out bsp 出現 可能 inf package com.swift; public class Try_Catch_Finally_Test { public static void main(String[] args

使用 Go 語言開發大型 MMORPG 遊戲服務器怎麽樣?(非常穩定、捕獲所有異常、非常適合從頭開始,大公司已經現成的C++框架、所以使用)

hive 有效 筆記 序列 優勢 nal 授權 登陸 RR 使用 Go 語言開發大型 MMORPG 遊戲服務器怎麽樣?和C Socket服務器比起來有什麽優劣?可行性怎麽樣? 從2013年起,經朋友推薦開始用Golang編寫遊戲登陸服務器, 配合C++做第三方平臺

《重構改善既程式碼的設計》pdf附網盤下載連結送給還在迷茫的你

技術書閱讀方法論 一.速讀一遍(最好在1~2天內完成) 人的大腦記憶力有限,在一天內快速看完一本書會在大腦裡留下深刻印象,對於之後複習以及總結都會有特別好的作用。 對於每一章的知識,先閱讀標題,弄懂大概講的是什麼主題,再去快速看一遍,不懂也沒有關係,但是一定要在不懂的

tensorflow+tensorflow-serving+docker+grpc模型上線部署(需bazel編譯,程式碼

系統環境ubuntu14.04(mac上裝的parallels虛擬機器) Python36 Tensroflow 1.8.0 Tensorflow-serving 1.9.0(1.8官方不支援python3) Docker 18.03.1-ce grpc Tens

【人生很短,做自己喜歡的事情罷。】人生是一場旅程,我們經歷了幾次輪迴,才換來這個旅程,而這個旅程很短,因此不妨大膽一些,不妨大膽一些去愛一個人,去攀一座山,去追一個夢······很多事我都明白,我相信一件事,上天讓我們來到這個世界上,就是為了讓我們創

人生是一場旅程,我們經歷了幾次輪迴,才換來這個旅程,而這個旅程很短,因此不妨大膽一些,不妨大膽一些去愛一個人,去攀一座山,去追一個夢······有很多事我都不明白,但我相信一件事,上天讓我們來到這個世...

python90%人的知道的,python使用小計巧 (程式碼

這些小技巧,小編用的非常上手,所以分享出來,希望對你有幫助。 顯示有限的介面到外部 當釋出python第三方package時, 並不希望程式碼中所有的函式或者class可以被外部import,在__init__.py中新增__all__屬性,該list中填寫可以import的類或者函式名,可以起到限制的im

checkbox屬性checked="checked"已顯示打勾的解決辦法

在做許可權管理的時候,做了一個功能,就是當勾選欄目,把所有的許可權全勾上。剛開始使用瞭如下程式碼: function check(id,check) { if (check) { $("." + id).find("input[type='checkbox']").a

人生很短,做自己喜歡的事情罷。(人生是一場旅程,我們經歷了幾次輪迴,才換來這個旅程,而這個旅程很短,因此不妨大膽一些,不妨大膽一些去愛一個人,去攀一座山,去追一個夢······很多事我都明白,我相信一件事,上天讓我們來到這個世界上,就是為了讓我們創造

人生是一場旅程,我們經歷了幾次輪迴,才換來這個旅程,而這個旅程很短,因此不妨大膽一些,不妨大膽一些去愛一個人,去攀一座山,去追一個夢······有很多事我都不明白,但我相信一件事,上天讓我們來到這個世...

try{}裡面return,finally裡的程式碼執行,什麼時候被執行?

給出答案:會執行,在方法返回給呼叫者前執行,因為如果存在finally程式碼塊,try中的return語句不會立馬返回給呼叫者,而是記錄下返回值待finally程式碼塊執行完畢之後再返回;注意這幾點:1