總結(jié)-3

1、post請(qǐng)求與get請(qǐng)求的區(qū)別
    a.get請(qǐng)求一般是獲取數(shù)據(jù)
      post請(qǐng)求一般提交數(shù)據(jù)
    
    b.GET參數(shù)通過(guò)URL傳遞,
      POST放在Request body中
      
    c.get請(qǐng)求可以被緩存,
      post請(qǐng)求不會(huì)被緩存
    
    d.get請(qǐng)求刷新服務(wù)器或者回退沒(méi)有影響,
      post請(qǐng)求回退時(shí)會(huì)重新提交數(shù)據(jù)請(qǐng)求
      
    e.GET比POST更不安全,因?yàn)閰?shù)直接暴露在URL上,所以不能用來(lái)傳遞敏感信息
     
    f.get因?yàn)閰?shù)會(huì)放在url中,所以隱私性,安全性較差,請(qǐng)求的數(shù)據(jù)長(zhǎng)度是有限制的,
      不同的瀏覽器和服務(wù)器不同,一般限制在 2~8K 之間,更加常見(jiàn)的是 1k 以內(nèi);
      post請(qǐng)求是沒(méi)有的長(zhǎng)度限制,請(qǐng)求數(shù)據(jù)是放在body中;
      
    g.對(duì)參數(shù)的數(shù)據(jù)類型,GET只接受ASCII字符,而POST沒(méi)有限制
     
    h.深入理解
      1.GET和POST都是http請(qǐng)求方式,底層都是 TCP/IP協(xié)議,
         通常GET產(chǎn)生一個(gè) TCP數(shù)據(jù)包;
         POST 產(chǎn)生兩個(gè) TCP 數(shù)據(jù)包(但firefox是發(fā)送一個(gè)數(shù)據(jù)包),

      2.對(duì)于GET方式的請(qǐng)求,瀏覽器會(huì)把http header和data一并發(fā)送出去,服務(wù)器響應(yīng) 200(返回?cái)?shù)據(jù))表示成功;
         而對(duì)于POST,瀏覽器先發(fā)送 header,服務(wù)器響應(yīng)100, 瀏覽器再繼續(xù)發(fā)送 data,服務(wù)器響應(yīng) 200(返回?cái)?shù)據(jù))。


2、如何設(shè)置文件和目錄的權(quán)限
    在 Linux 中,可以使用 chmod 命令來(lái)設(shè)置文件和目錄的權(quán)限
    權(quán)限由三個(gè)組成部分組成:所有者(owner)、群組(group)和其他用戶(others)
    
     例如,運(yùn)行 chmod 755 filename 可以將文件的權(quán)限設(shè)置為 rwxr-xr-x,其中 r 表示可讀,w 表示可寫(xiě),x 表示可執(zhí)行
     
     控制用戶對(duì)文件的權(quán)限的命令:chomd –rwx file (r讀w寫(xiě)x執(zhí)行)


3、linux查詢端口命令
    a.netstat -atulnp 會(huì)顯示所有端口和所有對(duì)應(yīng)的程序
      要列出正在偵聽(tīng)的所有 TCP 或 UDP 端口
      etstat -tunlp
      
    b.lsof -i:端口號(hào) 用于查看某一端口的占用情況
      比如查看9092端口使用情況
      lsof -i:9095
             
             
4、redis的查看數(shù)據(jù)類型
    可以通過(guò)redis的命令來(lái)查詢數(shù)據(jù)類型,查詢指定key的數(shù)據(jù)類型。
     具體命令如下:
         type key
         
    其中,key是要查詢的鍵名。執(zhí)行該命令后,redis會(huì)返回該鍵對(duì)應(yīng)的數(shù)據(jù)類型,例如string、hash、list、set、zset等
     需要注意的是,如果查詢的鍵不存在,redis會(huì)返回none
     
       
    1.補(bǔ)充:redis通用命令:
        1.查看數(shù)據(jù)庫(kù)所有的key:keys *   

         ?---匹配1個(gè)字符  *---匹配0個(gè)或多個(gè)字符   []---匹配[]里面的1個(gè)字符,

         keys k*:查看數(shù)據(jù)庫(kù)中以k開(kāi)頭的key

         key h?o:以h開(kāi)頭,o結(jié)尾的中間只有一位的

        2. 判斷某一個(gè)key是否在數(shù)據(jù)庫(kù)存在:exits key 如果存在,返回1,否則,返回0

        3.key k1 k2 k3 返回值是key的數(shù)量

        4.移動(dòng)指定的key到指定的數(shù)據(jù)庫(kù)實(shí)例:move key index(編號(hào))---move k 1

        5.查看指定的key的剩余生存時(shí)間:ttl

         如果key沒(méi)有設(shè)置生存時(shí)間,返回-1

         如果key不存在,返回-2

        6.設(shè)置key的最大生存時(shí)間:expire key time(以秒結(jié)束)  expire k 20

        7.查看指定key的數(shù)據(jù)類型:type key

        8.重命名key:rename key new key   rename k k1

        9.刪除指定key:del key key key  返回值是實(shí)際刪除的key的數(shù)量,一次刪除多個(gè)key


5、mysql中查詢左連接與右連接區(qū)別
    a.左連接:left join 通過(guò)左連接獲取數(shù)據(jù),以左表為基礎(chǔ),顯示左表所有記錄,
      而右表中數(shù)據(jù)只顯示與關(guān)聯(lián)條件相匹配的記錄,不匹配的屬性值以NULL填充
             
    b.右連接:right join 通過(guò)右連接獲取數(shù)據(jù),以右表為基礎(chǔ),顯示右表所有記錄,
      而左表中數(shù)據(jù)只顯示與關(guān)聯(lián)條件相匹配的記錄,不匹配的屬性值以NULL填充
             
    c.內(nèi)連接:相當(dāng)于左連接與右連接的合并,去掉所有含NULL的數(shù)據(jù)行,
      剩下的就是查詢出來(lái)的數(shù)據(jù)了。其實(shí)就是兩邊的表都必須滿足條件。(返回相關(guān)的查詢結(jié)果,返回的是兩個(gè)表的交集部分)
    

6、怎么查看app查看的日志
    具體操作步驟:
    1.手機(jī)連接電腦
      將手機(jī)連接電腦并且手機(jī)處于開(kāi)發(fā)者模式
      打開(kāi)cmd窗口查看手機(jī)是否與電腦連接,指令為adb devices連接成功
    2.查看app日志
      輸入命令:adb logcat * | find “trace”,實(shí)時(shí)查看App操作日志 (注:其中trace是對(duì)應(yīng)應(yīng)用關(guān)鍵詞)
      若執(zhí)行上述命令,出現(xiàn)如下中文亂碼,則執(zhí)行 chcp 65001 即可修改,設(shè)置成utf-8編碼
      測(cè)試操作測(cè)試app,cmd窗口既可以看見(jiàn)具有篩選關(guān)鍵字的日志
      如需停止查看日志ctrl+c即可
        
        
7、補(bǔ)充:
    安卓開(kāi)發(fā)過(guò)程中經(jīng)常遇到真機(jī)崩潰的情況,這時(shí)如何拿到崩潰日志是我們十分關(guān)心的問(wèn)題。
    手機(jī)崩潰后,不要再進(jìn)行別的操作,保留現(xiàn)場(chǎng)。連接手機(jī)和電腦,使用adb命令抓取崩潰日志       
     adb logcat -c 清除之前的日志信息,一般在看日志前都會(huì)執(zhí)行這個(gè)命令,目的是好看日志,不然前面的日志應(yīng)該會(huì)超級(jí)多,不好看問(wèn)題
     adb logcat *:W
      注意:這句命令的意思是顯示所有優(yōu)先級(jí)大于等于警告(Warning)的日志,查找崩潰問(wèn)題一般用

    adb logcat *:E
      注意:這句命令的意思是顯示所有優(yōu)先級(jí)大于等于錯(cuò)誤(Error)的日志     
      日志的優(yōu)先級(jí)一般有如下幾檔,由低到高
        1、VERBOSE,一般信息,使用Log.v輸出顏色為黑色且日志級(jí)別大于等于VERBOSE的信息
        2、DEBUG,調(diào)試信息,使用Log.d輸出顏色為藍(lán)色且日志級(jí)別大于等于DEBUG的信息
        3、INFO,標(biāo)識(shí)信息,使用Log.i輸出綠色且日志級(jí)別大于等于INFO的信息
        4、WARN,警告信息,使用Log.w輸出橙色且日志級(jí)別大于等于WARN的信息
        5、ERROR,錯(cuò)誤信息,使用Log.e輸出紅色且日志級(jí)別大于等于ERROR的信息


8、Python+selenium自動(dòng)化
    a.自動(dòng)化測(cè)試用例如何編寫(xiě):
      1.用例自己設(shè)計(jì)的,一般業(yè)務(wù)流程為主(登錄--完成一個(gè)業(yè)務(wù)--退出)
      2.從系統(tǒng)測(cè)試用例中進(jìn)行篩選,再來(lái)設(shè)計(jì)用例
      
    b.自動(dòng)化測(cè)試發(fā)現(xiàn)BUG多嗎?
       不多,已經(jīng)測(cè)試通過(guò)的基本功能再進(jìn)行自動(dòng)化腳本編寫(xiě)和在后續(xù)版本執(zhí)行自動(dòng)化測(cè)試,
       它主要是保證已經(jīng)測(cè)試通過(guò)的功能在新版本更新后沒(méi)有問(wèn)題。
       
    c.隱性等待與顯性等待的區(qū)別
      1.作用域不同:隱式為全局元素,是設(shè)置全局的等待,顯式等待為單個(gè)元素有效
      2.使用方法不同:隱式等待直接通過(guò)驅(qū)動(dòng)對(duì)象調(diào)用,而顯式等待方法封裝在WebDriverWait類中
      3.達(dá)到最大超時(shí)時(shí)長(zhǎng)后拋出的異常不同:隱式等待默認(rèn)檢測(cè)頻率為0.5s,
        超時(shí)異常為NoSuchElementException;顯式等待超時(shí)異常為T(mén)imeoutException
        
    d.一個(gè)元素?zé)o法定位,考慮因素:
      1.頁(yè)面加載過(guò)慢,需要添加等待時(shí)間
      2.頁(yè)面包含iframe框架
      3.元素為動(dòng)態(tài)元素,需要通過(guò)父節(jié)點(diǎn)/兄弟節(jié)點(diǎn)定位
      4.元素不能操作:判斷元素是否可用、是否可見(jiàn) 
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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

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