當前位置:首頁 » 網頁前端 » pythonwebgetpost
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

pythonwebgetpost

發布時間: 2023-08-07 14:41:45

⑴ 如何用python搭建一個最簡單的Web伺服器

用Python建立最簡單的web伺服器

利用Python自帶的包可以建立簡單的web伺服器。在DOS里cd到准備做伺服器根目錄的路徑下,輸入命令:

  • python -mWeb伺服器模塊[埠號,默認8000]

  • 例如:

  • python -m SimpleHTTPServer 8080

  • 然後就可以在瀏覽器中輸入

  • http://localhost:埠號/路徑

  • 訪問伺服器資源。
    例如:

  • http://localhost:8080/index.htm(當然index.htm文件得自己創建)

  • 其他機器也可以通過伺服器的IP地址來訪問。

    這里的「Web伺服器模塊」有如下三種:

  • BaseHTTPServer: 提供基本的Web服務和處理器類,分別是HTTPServer和BaseHTTPRequestHandler。

  • SimpleHTTPServer: 包含執行GET和HEAD請求的SimpleHTTPRequestHandler類。

  • CGIHTTPServer: 包含處理POST請求和執行CGIHTTPRequestHandler類。

⑵ 初學web開發需要掌握哪些知識

Web前端開發要學習的知識很雜亂,知識范圍也很廣。不過,所有技術都是圍繞著三大基本技術來進行的:HTML、CSS,JavaScript。前端的開發中,在頁面的布局時, HTML將元素進行定義,CSS對展示的元素進行定位,再通過JavaScript實現相應的效果和交互。

掌握三大技能,還要運用多種開發工具輔助開發。目前我們常用到的有:Dreamweaver,Sublime Text ,HBuilder等。

工具只是解決單個問題,在你更加深入了解這個行業之後,你可能還會用到各種不同的框架,目前有三大框架Angular、React、Vue,除此之外還有Bootstrap、Fbootstrapp、BootMetro、Gumby、IVORY、Kube等,都是需要慢慢接觸的。

另外,做前端開發可能還會運用到SEO、DOM、BOM、Ajax等技能,網站性能優化和伺服器端的基礎知識也是需要了解的。

學前端可能會很難,但世界上沒有學不會的知識,相信自己,努力學下去,一定可以成功。

⑶ 測試工程師面試,介面測試問題總結

1、什麼是介面?

2、什麼是介面測試?

3、介面組成的要素有哪些?

4、Python 的 requests 包是干什麼的?

5、如何使用 Python 的 requests 包?

6、為什麼開展介面測試?

7、為什麼要寫介面測試用例?

8、介面測試用例設計主要考慮哪些?

9、介面測試用例包含哪些內容?

10、介面測試如何設計用例?

11、通用介面用例設計?

12、介面測試報告包含哪些內容?

13、測試指標范圍包含哪些?

14、做介面測試運用過哪些測試工具?

15、抓包工具用過哪些?

16、為什麼進行抓包測試?

17、TCP/IP 參考模型有哪幾層?

18、常用協議的埠號?

19、常見的狀態碼有哪些?

20、你們公司的介面測試流程是怎樣的?

21、請詳細闡述介面測試和 UI 測試在測試活動中是如何協同測試的?

22、介面測試注意事項?

23、介面測試執行中對比資料庫嗎?

24、請簡述一下 cookie、session 以及 token 的區別?

25、談談你對 HTTP 協議的了解?

26、你對 http 請求跟 webservice 請求的了解?

27、在介面測試中關聯是什麼含義?如何使用 Postman 設置關聯?

28、介面自動化測試框架一般分為幾層?

29、測試框架里如何做到數據和代碼分離?

1、什麼是介面?

介面就是 API,意思是應用程序編程介面。

介面本質上是程序開發的函數和方法,提供參數和返回值。

2、什麼是介面測試?

介面測試是測試系統組件間介面的一種測試,介面測試主要用於檢測外部系統和內部系統之間以及各個子系統之間的交互點。測試的重點是檢查數據的交換、傳遞和控制管理的過程,以及系統間的相互邏輯依賴關系等。

3、介面組成的要素有哪些?

介面訪問的地址、請求的方法、參數、返回值

(1)介面訪問的地址 協議://IP 地址或域名:埠號/應用名/功能名

(2)請求的方法 get、post 等

(3)參數 用戶使用介面時,需要向介面提供的數據。

(4)返回值 介面給用戶的反饋結果。

4、Python 的 requests 包是干什麼的?

requests 是一個 HTTP 庫,作用是發送 HTTP 請求,獲得響應,往往使用在網路爬蟲,介面自動化測試中。

5、如何使用 Python 的 requests 包?

(1)安裝 Python

(2)安裝 requests 模塊

(3)創建.py 文件

(4)導入 requests 模塊

(5)編寫 Python 代碼

(6)調用 requests 方法

6、為什麼開展介面測試?

介面測試屬於集成測試、測試接入越早,就越能在項目早期發現問題,修復問題成本降低。

介面測試非常快速,UI 自動化執行一個測試用例 10s 左右,介面用例執行一般毫秒級。

7、為什麼要寫介面測試用例?

(1)理清思路,避免漏測和重復測試。

(2)提高測試效率、跟進測試進度、告訴領導做過、跟進重復性工作。

(3)更好的記錄問題、發現問題、復現問題、同時這也是介面測試流程中的一個產物。

8、介面測試用例設計主要考慮哪些?

(1)功能是否正常。

(2)功能是否按照介面文檔實現、是否依賴業務、異常情況(參數異常、數據異常)、安全測試等。

9、介面測試用例包含哪些內容?

用例名稱、介面地址、請求方式、前置條件、描述、請求頭部、請求參數、狀態碼、預期返回結果

10、介面測試如何設計用例?

介面測試一般考慮入參形式的變化和介面的業務邏輯。

一般設計介面測試用例採用等價類、邊界值、場景法居多。

介面測試用例設計思路:

(1)介面業務邏輯測試,介面邏輯測試是指根據業務邏輯,輸入參數,輸出值的描述,對正常輸入情況下所得輸出值是否正確的測試,也就是測試對外提供的介面服務是否正常。

(2)模塊介面測試,模塊介面測試是為了保證數據的安全及程序在異常情況下的邏輯正確性而進行的測試模塊,介面測試主要包括以下幾個方面

a.鑒權碼 token 異常(為空、沒有、錯誤、過期)

b.其他參數的異常,必填項的檢查,參數的長度、類型、格式異常。常規的參數有數字,字元串,日期;參數長度,位數、身份證、電話的長度;參數的類型,數字精度,字母,中文,帶空格的參數,特殊字元;日期格式,日期年月日,年月日時分秒,日期格式(包含/-:等)

c.錯誤碼異常覆蓋

11、通用介面用例設計?

(1)通過性驗證:首先肯定要保證這個介面功能是好使的,也就是正常的通過性測試,按照介面文檔上的參數,正常傳入,是否可以返回正確的結果。

(2)參數組合:現在有一個操作商品的介面,有個欄位 type,傳 1 的時候代表修改商品,商品 id、商品名稱、價格有一個是必傳的,type 傳 2 的時候是刪除商品,商品 id 是必傳的,這樣就要測參數組合了,type 傳 1 的時候,只傳商品名稱能不能修改成功,id、名稱、價格都傳的時候能不能修改成功。

(3)介面安全:繞過驗證,比如說購買了一個商品,它的價格是 300 元,那我在提交訂單時候,我把這個商品的價格改成 3 元,後端有沒有做驗證,更狠點,我把錢改成-3,是不是我的余額還要增加?繞過身份授權,比如說修改商品信息介面,那必須得是賣家才能修改,那我傳一個普通用戶,能不能修改成功,我傳一個其他的賣家能不能修改成功。參數是否加密,比如說我登陸的介面,用戶名和密碼是不是加密,如果不加密的話,別人攔截到你的請求,就能獲取到你的信息了,加密規則是否容易破解。密碼安全規則,密碼的復雜程度校驗。

(4)異常驗證:所謂異常驗證,也就是我不按照你介面文檔上的要求輸入參數,來驗證介面對異常情況的校驗。比如說必填的參數不填,輸入整數類型的,傳入字元串類型,長度是 10 的,傳 11,總之就是你說怎麼來,我就不怎麼來,其實也就這三種,必傳非必傳、參數類型、入參長度。

12、介面測試報告包含哪些內容?

系統介面概況、測試目的與范圍、測試工具與資源、測試記錄及結果分析(單場景介面、混合場景介面)、測試結論

13、測試指標范圍包含哪些?

(1)被測介面接收請求和返回報文。

(2)被測介面返回狀態、被測介面對應業務邏輯處理、涉及數據沉澱的處理、復雜場景下多個介面串聯交互。

14、做介面測試運用過哪些測試工具?

(1)Postman

(2)JMeter

(3)SoapUI

(4)Python + requests

(5)Java + HttpClient

(6)Java + OkHttp

15、抓包工具用過哪些?

(1)Fiddler

(2)Charles

(3)Wireshark

16、為什麼進行抓包測試?

有些時候公司沒有標準的介面文檔,測試人員只能抓包來獲取介面信息。

抓包可以迅速找到請求,通過抓包可以查看整個請求過程,以及響應過程,可以通過抓包來分辨前台還是後台 bug。

通過抓包,可以查看是否有敏感信息泄露,比如用戶密碼和個人賬號信息等數據。

通過抓包進行測試,攔截請求,修改請求數據,查看對應響應結果,抓包本身就是介面測試的一部分。

17、TCP/IP 參考模型有哪幾層?

應用層、傳輸層、網路層、網路介面層

18、常用協議的埠號?

(1)21/tcp FTP 文件傳輸協議

(2)22/tcp SSH 安全登錄、文件傳送(SCP)和埠重定向

(3)23/tcp Telnet 不安全的文本傳送

(4)25/tcp SMTP Simple Mail Transfer Protocol(E-mail)

(5)69/udp TFTP Trivial File Transfer Protocol(微型文件傳輸協議)

(6)80/tcp HTTP 超文本傳送協議(WWW)

(7)110/tcp POP3 Post Office Protocol(E-mail)

(8)443/tcp HTTPS used for securely transferring web pages

(9)3389/tcp 遠程訪問 5631/tcp

(10)5632/udp pcanywhere 埠號

(11)1433 sqlServer 服務埠號

(12)1521 Oracle 服務埠號

(13)3306 Mysql 服務埠號

(14)8080 Tomcat 默認服務埠號

19、常見的狀態碼有哪些?

(1)1XX 信息提示,用於指定客戶端相應的某些動作。

(2)2XX 成功,用於表示請求成功。

(3)3XX 重定向,用於移動的文件並且常被包含在定位頭信息中制定的新的地址信息。

(4)4XX 客戶端錯誤,用於指出客戶端的錯誤。

(5)5XX 伺服器錯誤,用於指出伺服器的錯誤。

20、你們公司的介面測試流程是怎樣的?

(1)從開發中取得介面文檔,了解介面業務,主要包括介面地址、請求方式、入參、出參、返回格式等信息。

(2)使用 Jmeter 進行介面測試,創建一個線程組,然後建立一個 http 請求默認值,再新建很多 http 請求,一個請求是一個用例,輸入相應介面路徑、訪問方式、參數等,創建斷言和察看結果樹。

(3)最後調用並執行測試用例,編寫測試報告。

(4)在做介面測試的時候遇到過很多問題,都是自己獨立解決的,比如返回值亂碼(修改 Jmeter 的配置文件為 UTF-8)。

21、請詳細闡述介面測試和 UI 測試在測試活動中是如何協同測試的?

介面測試和 UI 測試這兩塊其實是有一部分是重疊的,UI 測試是通過前端寫的界面來調用介面,而介面測試是直接調介面。所以排除前端的處理的邏輯和調用的正確性,在理論上介面測試是可以覆蓋所有的 UI 測試。但實際過程中,如果只是在介面層覆蓋所有的業務流,在 UI 上只測試前端的邏輯,最終的結果可能會是忽視很多原有的功能點,導致了 UI 測試的不充分。所以存在多人分工且時間充分的時候可以嘗試介面去做業務流的全覆蓋,否則不要輕易嘗試。

22、介面測試注意事項?

(1)改變請求參數,看響應結果是否和介面文檔一致。

(2)查看參數是否有敏感信息(比如個人賬戶信息,資金信息)。

(3)查看是否對關鍵參數進行加密處理(密碼信息)。

(4)所有列表頁介面必須考慮排序值。

(5)介面返回的圖片地址能否打開,圖片尺寸是否符合需求。

(6)介面有翻頁時,頁碼與頁數的異常值測試。

(7)當輸出參數有聯動性時,需要校驗返回兩參數的實際結果是否都符合需求每個介面入參的默認值、異常類型、非空校驗。

(8)入參支持多個值時,要考慮傳的值的個數多的情況下,介面會不會報錯。

23、介面測試執行中對比資料庫嗎?

肯定要對比,因為介面返回值的數據來源於資料庫,介面對數據的操作還要進行深層次的資料庫檢查。

24、請簡述一下 cookie、session 以及 token 的區別?

cookie 數據存放在客戶的瀏覽器上、session 數據放在伺服器上、token 是介面測試時鑒權碼,一般情況下登陸後才可以獲取到 token,然後在每次請求介面時需要帶上 token 參數。

cookie 不安全,別人可以分析存在本地的 cookie 並進行 cookie 欺騙,考慮到安全應當使用 session 可以將登錄信息等重要信息存放為 session,其他信息可以保存在 cookie。

25、談談你對 HTTP 協議的了解?

超文本傳輸協議,埠為 80,是由請求和響應兩部分組成的。

請求是由請求頭,請求行,請求正文組成;響應是由響應頭、響應行、響應正文組成。

面向安全的話使用 https。

26、你對 http 請求跟 webservice 請求的了解?

(1)http api 介面:是走 http 協議,通過路徑來區分調用的方法,請求報文都是 key-value 形式的,返回報文一般都是 json 串,有 get 和 post 等方法,這也是最常用的兩種請求方式。可以使用的工具有 postman、RESTClient、jmeter、loadrunner 等。

(2)webservice 介面:是走 soap 協議通過 http 傳輸,請求報文和返回報文都是 xml 格式的,都是通過工具才能進行調用與測試。可以使用的工具有 SoapUI、jmeter、loadrunner 等。

27、在介面測試中關聯是什麼含義?如何使用 Postman 設置關聯?

關聯就是把上一個介面返回值的部分截取出來,作為下一個介面的參數,能讓介面串聯運行。

在 Postman 中設置關聯的步驟如下:

(1)通過正則表達式提取的方式或 json 取值的方式把下一個介面需要的信息從上一個介面截取出來。

(2)使用設置全局變數的代碼把取出來的值保存到全局變數里。

(3)在下一個介面中,使用(全局變數)代替要替換的靜態值。

28、介面自動化測試框架一般分為幾層?

自動化測試框架一般分為 5 層(配置層,腳本層,數據層,測試報告層,驅動層)

介面項目工程規劃大致可分為幾類,首先是測試結果類,比如說叫 test_rusult,裡面存放一些比如日誌文件,測試報告。然後是測試用例 testcase,裡面分模塊存放測試用例。接下來是公共方法類,比如說叫 public,或者是 tools,裡面存放一些,讀取 excel 數據的方法,發送 http 請求的方法,收集 log 日誌的方法,發送郵件,操作資料庫等方法。還有就是配置文件類,比如說叫 config,裡面存放一些指定運行部分用例的配置文件,連接資料庫的配置文件。最後是寫一個 run 方法,運行所有的用例。

29、測試框架里如何做到數據和代碼分離?

第一種:寫在 excel 表格里,像這種主要是讀取 excel 數據有點麻煩,常用的用來讀取 excel 的第三方庫有 openpyxl,xlrd 等。當然讀取 excel 數據最好用的還是用來做數據分析的 pandas 模塊,不用寫那麼多 for 循環。

第二種:數據存放到 yaml 文件里,一個模塊或者是一個功能寫一個 yaml 文件,最後寫個讀取 yaml 文件的公共方法就行了。yaml 格式的文件比較簡單。

第三種:存放在資料庫裡面。

第四種:數據存放在 json 文件里。