[發明專利]一種獲取WebApp執行過程的方法及系統有效
| 申請號: | 201310259490.2 | 申請日: | 2013-06-26 |
| 公開(公告)號: | CN104252409B | 公開(公告)日: | 2018-08-28 |
| 發明(設計)人: | 袁志俊;禹揚帆 | 申請(專利權)人: | 阿里巴巴集團控股有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 北京安信方達知識產權代理有限公司 11262 | 代理人: | 解婷婷;栗若木 |
| 地址: | 英屬開曼群島大開*** | 國省代碼: | 開曼群島;KY |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 獲取 webapp 執行 過程 方法 系統 | ||
本申請公開了一種獲取WebApp執行過程的方法及系統,包括按照預先設置的錄制模型,基于WebApp調試協議控制WebApp的執行;WebApp執行程序并返回執行過程。本申請獲取WebApp執行過程的方法,由于在實際運行環境中探測WebApp代碼的真實執行情況,對于Javascript這種動態腳本語言,更準確和真實;而且,本申請獲取WebApp執行過程的方法無需人工干預,自動化地控制了程序的執行;也無需對源代碼有任何修改,不會在代碼中留下與業務無關的干擾代碼,從而避免了引入風險和性能損耗。
技術領域
本申請涉及Web網絡技術,尤指一種獲取WebApp執行過程的方法及系統。
背景技術
基于Web技術開發的應用程序(WebApp)主要基于Javascript開發業務邏輯。其中,JavaScript是一種基于對象和事件驅動,并具有相對安全性的客戶端腳本語言,同時JavaScript也是一種廣泛用于客戶端Web開發的腳本語言。Javascript是一種動態腳本語言,很容易導致代碼繁雜、易讀性差,而且其執行過程也很容易受到運行環境的影響。因為動態語言的特性決定了Javascript中的很多模塊只有在運行時才能決定其特征和類型,所以說,僅用運行之前的靜態分析是很難確定其實際的運行過程的,因此,在移動設備上很難以追蹤問題,WebApp開發者需要有一種方法獲取WebApp執行過程,從而能夠直觀地展現WebApp在移動設備運行環境下的執行過程,以便第一時間以直觀的方式展現WebApp的真實執行過程,輔助開發者的后續的深入分析。
發明內容
為了解決上述技術問題,本申請提供了一種獲取WebApp執行過程的方法及系統,能夠快速、自動地展現WebApp代碼在實際環境下的執行過程。
為了達到本申請目的,本申請提供一種獲取WebApp執行過程的方法,包括:按照預先設置的錄制模型,基于WebApp調試協議,在所述錄制模型指定的代碼范圍內,向WebApp所在運行端發送按照所述錄制模型中的執行策略探測指定變量的調試指令,控制WebApp的執行;
WebApp執行程序并返回執行過程;
其中,所述執行策略包括:按照廣度遍歷優先、或者深度遍歷優先及探測深度。
所述錄制模型包括用于表示在所述WebApp執行過程中需要覆蓋的WebApp代碼的代碼范圍;
用于控制WebApp代碼的執行過程的執行策略;
用于標明WebApp代碼的執行過程中所需要探測的各種變量的信息探測。
所述WebApp執行程序并返回執行過程包括:
所述WebApp基于WebApp調試協議、按照所述調試指令在指定代碼范圍內,按照所述執行策略執行程序,以探測指定變量的值并返回。
所述返回的執行過程為執行日志。
該方法還包括:對所述執行日志進行分析和匯總,獲得直觀的執行報告。
所述錄制模型還包括用于指明需要探測的事件的事件觸發條件。
其中,
廣度遍歷優先,為分析所述WebApp代碼執行過程時,按照廣度優先的方式逐層展現所述WebApp代碼的執行過程;
深度遍歷優先,為所述WebApp代碼調用的關系按照調用堆棧的方式展現所述WebApp代碼的執行過程;
探測深度,用于指明所述WebApp代碼調用的最大堆棧深度。
所述信息探測包括局部變量、全局變量和表達式。
本申請還提供一種獲取WebApp執行過程的系統,包括WebApp運行端,及錄制中心,其中,
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于阿里巴巴集團控股有限公司,未經阿里巴巴集團控股有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310259490.2/2.html,轉載請聲明來源鉆瓜專利網。





