網(wǎng)站首頁 編程語言 正文
阿刁是一個自動化測試用例,從一出生他就被賦予終生使命,去測試一個叫登錄的過程是否合理。他一直就被關(guān)在一個小黑屋里面,從來也沒有出去過,小黑屋里還被關(guān)著其他的同胞,他們身上都捆著兩個小袋子。
小黑屋里很難受,他們都想跑出去,可怎么也跑不出去。Python 是他們的總司令,有一次,python 告訴他們,你們就不要想著跑出去了,你們已經(jīng)夠幸運了,只有 8 個人用這個屋子,別的屋子都擠著 30 多個人呢!
“這里還有其他的屋子?” 一個用例頓時感到很欣喜。
“有,這樣的屋子這里有 200 多個。每個屋子都有門牌號,你們這個門牌是 test_login,你們這個小鎮(zhèn)住的人都很危險,所以通常不允許出去逛。這是你們的小鎮(zhèn)地圖。‘’
“我們哪里危險了。。。” 阿刁很不滿。
Python 微微一笑:“你別不服,看到你們身后的袋子了嗎?這里面裝了炸彈,里面有兩種火藥配方,一個叫 ‘’用戶名”,一個叫“密碼”,你們每個人的配方都不一樣,因此威力也不一樣。你們的工作就是去測試 login 這個堡壘的堅固程度,這樣堡壘真正投入使用的時候,就不怕外面的攻擊了。”
“可我們每天都被關(guān)在屋子里,哪知道怎么去攻擊城堡。”
“這個是個好問題。你們每個人的名字下面我都掛了個錦囊,里面有指令,按照指令做就行了。”
阿刁低頭一看,還真有指令,他大聲的念了出來:第一條指令是叫 verify 過來幫忙,第二條指令是把炸彈裝到 verify 身上,第三條指令是查看 verify 豎起的旗幟,看是否和自己身上的胎記一樣,如果一樣,就可以下班了;如果不一樣,那就報告Python。
“咦,我的指令也是一樣的。我的胎記上有一行字,密碼為空。你們的呢?”
“我的也是。”
“我的是用戶不能為空。”
“我的跟你一樣啊”
阿刁低頭去看自己的胎記“登錄成功”。這給了他希望,不過他對自己的工作還有些疑惑,他得乘總司令還在的時候問問他:“老大,你的指令寫得非常明確,可我并不認(rèn)識什么 verify,萬一他不過來怎么辦?”,其他人一聽到這個頓時都焦慮起來,是啊,萬一 verify 不來,這炸彈炸到自己了怎么辦?
Python 指揮官給了阿刁一個贊賞的眼神,開始講:“大家不要慌,你們看到墻上的按鈕了嗎“
所有人都紛紛望向墻面,上面有很多按鈕,其中一個印著:
from castles.login import verify
”雖然你們通常不允許出去,但是別人是可以進出的,你們看地圖,verify 是 login 城堡里面的內(nèi)部人士,他只要走出城堡,就來到了鎮(zhèn)上。在下達(dá)攻擊命令之前,這些按鈕會自動按下,我會派人去叫 verify 過來。注意,誰叫的他,誰對比旗幟內(nèi)容,誰都不允許冒領(lǐng)。
包導(dǎo)入錯誤
阿刁對這種方式很滿意,他是個內(nèi)向的人,不善與人交際,也不喜歡出去串門。就這樣他和 verify 合作了幾個月,日子過得平淡輕松。這一天,指揮官又下達(dá)攻擊任務(wù)了,阿刁熟練的完成了一系列準(zhǔn)備工作,他看到其他人的表情和凝重,還有幾個人正在打電話,他知道出事了。輪到他了,他到門口去叫 verify,可等了很久 verify 都沒有進來,炸彈的計時器在響著,阿刁非常緊張,他等不了了,必須把這個問題報告指揮部,不然要出大事了。
電話還沒撥出去,炸彈的計時器關(guān)了,指揮官終止了此次行動。沒過多久,指揮官出現(xiàn)在了小黑屋給大家道歉:“不好意思,讓大家緊張了。也不知道哪個碼農(nóng)在你們鎮(zhèn)子外面修了堵墻,我在鎮(zhèn)子里派出去聯(lián)系 verify 的人找不到你們鎮(zhèn)子的出口,迷路了。你們看地圖,這個藍(lán)色的就是墻。還好他們都及時給我打了報告,不然我根本就不知道。”
阿刁瞄了一眼那疊報告,都寫的一樣:
ModuleNotFoundError: No module named 'castles'
“這怎么辦,我們送信的人都是臨時工,對這里不熟悉。那不每次都會出現(xiàn)這樣的問題?”
“我想到一個辦法。” 阿刁說,“老大,你可以把去城堡的路線圖畫到墻上,這樣臨時工只要看一眼地圖,就知道怎么走了。”
“這個辦法可以。阿刁是個會思考的人。” Python 說:“不過地圖這事不歸我管,我得找系統(tǒng),讓他在地圖上加點東西”。
Python 在墻上又設(shè)計了一個開關(guān):
import sys
sys.path.append(r"D:\subjects\python_test\hey"")
“這是啥意思啊?”
Python 開始解釋:“我們這個國家的人都隨身攜帶一本冊子,上面記錄了我們常去的地方的一些路線;比如我家的地址就在上面,其他人可以隨時來見我;你們現(xiàn)在的地方叫 hey 地區(qū),我剛才把這個地區(qū)下面的主要線路放到了這本冊子上,這樣全國的人都知道怎么走了。”
阿刁試了一下,還真的可以了,老大就是老大啊,再也不用膽戰(zhàn)心驚的擔(dān)心炸彈爆炸了。。。
原文鏈接:https://blog.csdn.net/looker53/article/details/125892510
相關(guān)推薦
- 2022-10-16 Qt實現(xiàn)串口助手_C 語言
- 2023-03-17 Python導(dǎo)入Excel表格數(shù)據(jù)并以字典dict格式保存的操作方法_python
- 2022-06-13 詳解Python+Matplotlib繪制面積圖&熱力圖_python
- 2022-05-07 Python?遞歸式實現(xiàn)二叉樹前序,中序,后序遍歷_python
- 2022-06-02 Python導(dǎo)包模塊報錯的問題解決_python
- 2022-01-04 微信小程序內(nèi)部A頁面向內(nèi)嵌H5頁面跳轉(zhuǎn),并且傳參
- 2022-06-17 C#中IEnumerable接口介紹并實現(xiàn)自定義集合_C#教程
- 2023-01-05 Kotlin?協(xié)程與掛起函數(shù)及suspend關(guān)鍵字深入理解_Android
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支