Appium之WebView自動化


WebView的測試:主要作用在混合(Hybrid)的應用

        * 一部分是原生界面和代碼,而另一部分是內嵌網頁

        * 比如微信、支付寶

        * 內嵌了一個瀏覽器內核,由瀏覽器內核實現的

    安卓應用中的內嵌的展示網頁內容的模塊,我們稱之為webview

准備工作:

        app修改編譯  ==== 需要添加webview調用   ----  對webview對象加入setWebContentsDebuggingEnable的調用

        直接讓開發人員在下面這段代碼中加入一句代碼:

                     protected void onCrete(Bundle saveInstanceState){

                            super.onCreate(savedInstanceState);

                            WebView myWebView = (WebView) findViewById(R.id.xxxwebview);

                            myWebView.setWebContentsDebuggingEnabled(true);    #  加上這句代碼

                     };

         如果不知道怎么說,簡單總結一句話:“幫忙加一下webview的debug調用”就好。

webview有兩種情況

         ① webview的內容 不依賴所在app

             方法:直接用chrome瀏覽器F12里面的手機模式打開對應的網頁

                         - 只是打開一個url

                         - 直接使用chrome瀏覽器打開對應的網頁

                         - 使用手機模式

         ② 被測應用webview與app原生有交互,依賴app

              方法:通過chrome瀏覽器的遠程調試功能(前提是本電腦可以正常上網)

                  詳細步驟: - 確保被測試app在手機上打開

                                 - 打開chrome瀏覽器,地址輸入chrome://inspect

                                 - 等待界面顯示如下 ,這里就不截圖了

Appium自動化webview:

         * appium中把所有的界面環境 稱之為context

         * native部分的context名字一般為NATIVE_APP

         * webview部分的context則為WEBVIEW_XXX   (應用app  package名)

         * 我們怎么查看當前有哪些context呢?   ---------------    driver.contexts

         * 而顯示當前context的則是  -------------  driver.current_context

通知查看》》

        安卓的系統通知在通知欄

        打開通知欄  driver.open_notifications()

        查看通知內容

        返回應用   driver.press_keycode(4)     #  返回鍵


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM