pycharm 遠(yuǎn)程調(diào)試 tempest

本地windows 下面 tempest pip依賴不好裝,而且和部分服務(wù)之間有防火墻之類的需要打通,很不方便。所以考慮直接本地編輯代碼,遠(yuǎn)端運(yùn)行代碼。記錄一下整個在pycharm里面設(shè)置的過程。

在 file -> setting -> project 解釋器里面增加remote 解釋器:

Paste_Image.png
Paste_Image.png

遠(yuǎn)程linux服務(wù)器的信息

root@cnsrc-cns-tempest-ci:~/tempest_netease/tempest-ci/tempest# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1400 qdisc pfifo_fast state UP qlen 1000
    link/ether fa:16:3e:cd:d1:a4 brd ff:ff:ff:ff:ff:ff
    inet 10.180.65.60/23 brd 10.180.65.255 scope global eth0
    inet6 fe80::f816:3eff:fecd:d1a4/64 scope link 
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether fa:16:3e:f2:57:f4 brd ff:ff:ff:ff:ff:ff
    inet 115.236.127.192/24 brd 115.236.127.255 scope global eth1
    inet6 fe80::f816:3eff:fef2:57f4/64 scope link 
       valid_lft forever preferred_lft forever
root@cnsrc-cns-tempest-ci:~/tempest_netease/tempest-ci/tempest#
Paste_Image.png

下面這個配置很重要, Local Path 是本地 py 文件存儲的地方(默認(rèn)為當(dāng)前工程所在地方), Remote Path 為遠(yuǎn)程 Linux 的目錄,編輯本地的 py 文件后,在調(diào)試時(shí),遠(yuǎn)程的 python 環(huán)境不會直接運(yùn)行你本地文件夾的 py 文件,而是訪問 Linux 自己的目錄,這個目錄就是這里設(shè)置的,接下來就是配置這連個文件夾同步即可。

Paste_Image.png
Paste_Image.png

進(jìn)行deployment 的配置

Paste_Image.png

配置sftp選項(xiàng),相當(dāng)于兩邊目錄同步設(shè)置

Paste_Image.png

配置mapping

Paste_Image.png

option里面,配置這個選項(xiàng),本地 ctrl +s 就能保存并同步到遠(yuǎn)端。(或者選擇always,pycharm就能一直自動幫你同步到遠(yuǎn)端)

Paste_Image.png

代碼也可以手工上傳,一般第一次進(jìn)行同步的時(shí)候可以手工上傳一遍,之后就選擇自動同步了。

Paste_Image.png

測試一下,在服務(wù)器端命令行下執(zhí)行nosetest:

root@cnsrc-cns-tempest-ci:~/tempest_netease/tempest-ci/tempest# nosetests -sv tempest/api/network/test_ports.py:PortsTestJSON.test_create_update_port_with_second_ip
tempest.api.network.test_ports.PortsTestJSON.test_create_update_port_with_second_ip[gate,smoke] ... ok

----------------------------------------------------------------------
Ran 1 test in 17.497s

OK
root@cnsrc-cns-tempest-ci:~/tempest_netease/tempest-ci/tempest#

下面配置pycharm端的runner設(shè)置:

pycharm端的runner配置為nosetest

選擇對應(yīng)的文件

D:\demo\tempest-ci\tempest\tempest\api\network\test_ports.py
Paste_Image.png

跑過的話效果如下:

Paste_Image.png

如果測試某一個具體的方法,可以這樣指定(測試具體的類,或者具體的目錄類似):

Paste_Image.png

打斷點(diǎn),debug看堆棧信息也可以使用了。

image

這比用 pdb 一個一個在文件中打斷點(diǎn)方便不少。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,694評論 19 139
  • Ubuntu的發(fā)音 Ubuntu,源于非洲祖魯人和科薩人的語言,發(fā)作 oo-boon-too 的音。了解發(fā)音是有意...
    螢火蟲de夢閱讀 100,810評論 9 468
  • linux資料總章2.1 1.0寫的不好抱歉 但是2.0已經(jīng)改了很多 但是錯誤還是無法避免 以后資料會慢慢更新 大...
    數(shù)據(jù)革命閱讀 13,335評論 2 33
  • 其實(shí),很久以前就想寫點(diǎn)東西,無論寫什么?寫寫就好,太久沒有訴說自己心里的想法,我也許就是沉默的大多數(shù),以前總想侃侃...
    94小花喵閱讀 350評論 0 0
  • 1、堅(jiān)持早起:早上5點(diǎn)20分起床。我的行動力很好! 2、堅(jiān)持站樁:堅(jiān)持站樁15分鐘。已經(jīng)堅(jiān)持一年多了,除了個別幾天...
    Rfen閱讀 112評論 0 0

友情鏈接更多精彩內(nèi)容