原创 python中寫入utf-16 bom文件 (用來批量生成xshell的docker登入腳本)

在docker容器的實際應用中,對於我這樣的測試來講 最頭疼的事情反而是有時候需要同時操作容器外和容器內 容器外給掛載的路徑rz文件,編譯服務(以供容器內啓動使用),查看日誌 而容器內則負責啓動服務,查看進程等操作 經常不小心操作

原创 解決flash播放器與您的地區不相容,中國特供版鎖區+彈窗廣告的流氓行爲

文件下載在我的github上:https://github.com/rainydew/flash-player-without-help-service。使用幫助在首頁,歡迎issue/PR/star 伴隨flash的沒落,Ado

原创 python中遞歸比較json、列表和字典,顯示差別的庫,可忽略順序,可支持正則,可設浮點精度(已上傳至pypi,庫名jsoncomparedeep)

在做接口自動化測試的時候,經常需要對返回的json比較、做斷言。 但是如果返回的json串很大,手寫斷言就非常的麻煩。 網上雖然有很多輪子,但是都不是特別好用,存在比較嚴重的這樣那樣的缺陷。 所以我自己寫了一個(功能更新於5月8日

原创 深挖python上下文管理——類的__init__、__enter__、__exit__、__del__在with下的表現

場景:今天因爲需要測試一個服務,在測試前,需要把它依賴的服務幹掉,在測試完成後(不論報錯),再把服務起來。 因爲它是其中的一個步驟,其他時間服務需開啓,不適用unittest通用的setup和teardown 所以想到寫一個類,通

原创 python操作服務器,迷你庫ssh-lite發佈升級(支持shell交互/文件上傳下載,封裝自paramiko)

在做後臺測試/自動化運維的時候,使用python操作ssh服務器是很常見的情況。常規是使用paramiko庫,但他比較複雜,主要是讀取的請求是阻塞的(需要自己多線程管理)。甚至好多自動化測試教學培訓,都不涉及paramiko這個庫

原创 python-類內函數的全局裝飾器

有時,比如寫RF的測試庫的時候,很多方法都寫在一個類裏。我們又可能需要一個通用的裝飾器,比如,要給某個底層類的方法打樁,查看入參和出參,用以理解業務;或者要hold住所有的執行錯誤,打印堆棧又不想程序退出或用例直接失敗 比如捕捉錯

原创 python實現的廣域網聊天(無需搭建服務器,基於FICS和socket模塊)

FICS是免費的國際象棋服務器(其實就是個命令行下棋的網站,有許多界面比如BabasChess、Arena、iNemesis或者我們的Verachess支持訪問),裏面允許未註冊會員登錄,而且他們登錄以後也可以聊天。所以我就利用這

原创 python強大生成式——一行代碼不嵌套實現的小九九乘法表

原創代碼 print ('\t'.join([str(x)+"*"+str(y)+"="+str(x*y)+"\n%s"%('\t'*2*x)*(y-8) for x in range(1,10) for y in range(x

原创 windows中VMWare下安裝Mac Os X 10.11踩坑記

做測試開發,本機是windows,而測試人員的電腦可能是Mac,集成在CI的是linux。所做的工具往往需要考慮跨平臺。爲了自己測試的方便,就想自己搭個Mac的虛擬機,沒想到,複雜度遠高於想象…… 主要參考還算靠譜的指引,但有些坑

原创 pip安裝庫用回官方源,檢查庫內提供的版本

今天自己更新了自己的庫到pypi以後,發現無法更新到最新的版本,清華和豆瓣的國內源遲遲不同步 我的國內源配置如下(git bash) admin@DESKTOP-36Q0EK4 MINGW64 ~ $ cat pip/pip.in

原创 python中寫入utf-16 bom文件,用以批量生成xshell的自動登入腳本

在docker容器的實際應用中,對於我這樣的測試來講 最頭疼的事情反而是有時候需要同時操作容器外和容器內 容器外給掛載的路徑rz文件,編譯服務(以供容器內啓動使用),查看日誌 而容器內則負責啓動服務,查看進程等操作 經常不小心操作

原创 docker exec 命令執行無效果,不報錯的坑

結論:需要關注是否有bash -c,開發的腳本是否有#!/bin/bash 在測試環境準備中,docker容器初始化的時候,比如通過jenkins或python腳本(paramiko)部署的時候,部署腳本經常需要使用docker

原创 linux和windows中安裝並讓python連接couchbase

首先,官方的couchbase庫實測只完好支持python3.7。如有版本需求者,可以二選一 1.使用pyinstaller打成二進制文件,然後給其他的程序以純文本的方式調用 2.使用http方式訪問couchbase。具體可以見

原创 python打包發佈pypi踩坑記(最新貼心版本,認真對待自己的庫)

在之前這個實現json比較的庫的帖子裏,我把庫上傳pypi的時候,相當坑。而且pypi有個特點,就是你一旦弄錯了,就不能刪除原來的名字(但可以刪庫,也可以更新版本,就是不能替換)。所以上傳時應該儘量謹慎。 1. 註冊pypi的賬號

原创 RobotFramwork二次開發,微小改動RF,實現while關鍵字的功能

我們都知道RF裏只支持for循環,不支持while循環。或者說,不能造出一個死循環(實際上,while循環就是一個帶判斷條件的死循環) 而且兩種通融的辦法也做不到 li=[0,1,2] for i in li: li.appe