測試中常見的面試題

 

1.web測試和app測試的區別?web

         1.1web項目,通常都是b/s架構,基於瀏覽器的,而app則是c/s的,必需要有客戶端。sql

        1.2系統架構來看的話,web測試只要更新了服務器端,客戶端就會同步會更新。並且客戶端是能夠保證每個用戶的客戶端徹底一致的。可是app端是不可以保證徹底一致的,除非用戶更新客戶端。若是是app下修改了服務端,意味着客戶端用戶所使用的核心版本都須要進行迴歸測試一遍。chrome

        1.3性能方面,web頁面可能只會關注響應時間,而app則還須要關心流量、電量、CPU、GPU、Memory。FPS,內存泄露,內存溢出等。瀏覽器

        1.4兼容方面,web是基於瀏覽器的,因此更傾向於瀏覽器和電腦硬件,電腦系統的方向的兼容,不過通常仍是以瀏覽器的爲主。而瀏覽器的兼容則是通常是選擇不一樣的瀏覽器內核進行測試(IE、chrome、Firefox),目前web測試也要考慮在手機瀏覽器的兼容性。app的測試則必須依賴phone或者是pad,不只要看分辨率,屏幕尺寸,還要看設備系統。系統總的來講也就分爲Android和iOS,不過國內的Android的定製系統太多,也是比較容易出現問題的。通常app的兼容測試三種方法,雲測試,請團隊測試,真機測試真機的選擇。首先要選擇主流的機型,其次要選擇不一樣的分辨率,尺寸,而後就是不一樣的操做系統。安全

        1.5相比較web測試,app更是多了一些專項測試:服務器

        1.5.1健壯性測試:網絡

  一些異常場景的考慮以及弱網絡測試。這裏的異常場景就是中斷,來電,短信,關機,重啓等。架構

  而弱網測試是app測試中必須執行的一項測試。包含弱網和網絡切換測試。須要測試弱網所形成的用戶體驗,重點要考慮回退和刷新是否會形成二次提交。須要測試丟包,延時的處理機制。避免用戶的流失。這些在前面的弱網測試那篇已經講過,這裏再也不講了。app

        1.5.2安裝、卸載、更新:運維

  web測試是基於瀏覽器的因此沒必要考慮這些。而app是客戶端的,則必須測試安裝、更新、卸載。除了常規的安裝、更新、卸載還要考慮到異常場景。包括安裝時的中斷、弱網、安裝後刪除安裝文件,更新的強制更新與非強制更新、增量包更新、斷點續傳、弱網,卸載後刪除app相關的文件等等。這裏講起來的話太多了,若是有疑問的同窗能夠評論或者給我留言。

        1.5.3界面操做:

      如今app產品的用戶都是使用的觸摸屏手機,因此測試的時候還要注意手勢,橫豎屏切換,多點觸控,事件觸發區域等測試。

 

     1.6自動化來說,web大多用的selenium、webdriver,而app則是appium。

     1.7性能使用的工具web則是LR,app使用Jmeter要多一點。

     1.8 安全測試,app 安裝包是否可反編譯代碼、安裝包是否簽名、權限設置,用戶名等是否進行了隱藏等。web則要關注,sql注入,xxl攻擊等。

    1.9 邊界測試,app測試好比sd不足,飛行模式等。web則不須要考慮這些

    1.10權限測試,app須要獲取用戶的不少權限,可是web獲取了用戶極少數的權限就能夠等等。

    2.http協議中的post和get區別

        HTTP是一個客戶端和服務器端請求和應答的標準(TCP )。客戶端是終端用戶 ,服務器端是網站 。
經過使用Web瀏覽器、網絡爬蟲或者其它的工具,客戶端發起一個到服務器上指定端口(默認端口 爲 80)的HTTP請求。
    (咱們稱這個客戶端)調用戶代理(user agent)。應答的服務器上存儲着(一些)資源,
客戶端與服務器之間的交互用到了兩種類型的消息:請求(Request) 和響應(Response)
    GET 向特定的資源發出請求。
    POST向指定資源提交數據進行處理請求(例如提交表單或者上傳文件)。數據被包含在請求體中。
    POST請求可能會致使新的資源的創建和/或已有資源的修改。
    GET是從服務器上獲取數據,POST是向服務器傳送數據
    GET 安全性較低,POST安全性較高。
    get(默認值)是經過URL傳遞表單值,post傳遞的表單值是隱藏到http報文體中,url中看不到。
    GET提交的數據大小有限制2kb

   3.你在測試中發現了一個 bug ,可是開發經理認爲這不是一個 bug ,你應該怎樣解決。

    將問題提交到缺陷管理庫,相似禪道,進行備案,
根據需求文檔,產品說明,設計文檔等,確認實際結果是否與計劃有不一致的地方,
若是沒有文檔,能夠根據相似軟件的通常特性來講明是否存在不一致的地方,來確認是不是缺陷;
根據通常用戶的使用習慣,來確認
與設計人員、開發人員和客戶表明等相關人員探討,確認是不是缺陷;
合理的論述,向測試經理說明本身的判斷的理由,注意客觀、嚴謹,不參雜我的情緒
等待測試經理作出最終決定,若是仍然存在爭議,能夠經過公司政策所提供的渠道,向上級反映,並由上級作出決定。

    4.如何跟蹤線上用戶反饋bug?

       1.首先收到 bug,確認是不是bug,復現bug

       2.確認是bug要對bug進行記錄,

       3.通知產品,告知開發,商量解決方案

       4.協助運維去查看日誌

        5.解決bug,測試環境驗證,集成驗證

        6.告知用戶,體驗解決

        7.和產品運營等確認是否須要給用戶賠償

        8.記錄bug處理過程,分析緣由,組織相關人員進行回顧

        9.思考測試過程當中不足,總結經驗教訓。

相關文章
相關標籤/搜索