• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • Automan 在不同瀏覽器中的兼容性問題淺析

    發表于:2011-11-04來源:Taobao QA Team作者:Taobao QA Team點擊數: 標簽:
    Automan 在不同瀏覽器中的兼容性問題淺析,IE 瀏覽器( Internet Explorer)以其捆綁在 windows操作系統中的免費銷售方式(無需單獨安裝)及其操作的簡便方式,贏得了大部分計算機用戶。但是 IE 瀏覽器最大的缺點是該軟件安全缺陷較多,而且未安裝功能插件時功能薄

      1)瀏覽器發展趨勢

      常見的網頁瀏覽器包括 Microsoft 的 Internet Explorer、Mozilla 的Firefox、Google的Chrome和Appale的Safari。

      IE 瀏覽器( Internet Explorer)以其捆綁在 windows操作系統中的免費銷售方式(無需單獨安裝)及其操作的簡便方式,贏得了大部分計算機用戶。但是 IE 瀏覽器最大的缺點是該軟件安全缺陷較多,而且未安裝功能插件時功能薄弱,可以說它在功能方面弱于所有其它瀏覽器。

      火狐(Mozilla Firefox)瀏覽器是由 Mozilla 公司開發的具有跨多個操作系統平臺(Windows、Linux和 MacOS等),也是當前十分流行的一款瀏覽器產品?;鸷鼮g覽器最大的特色就是“兼容”,目前已能支持 86 種語言。

      以Webkit為內核的Chrome和Safari瀏覽器,由于軟件體積小,瀏覽網頁速度快,本身安全性較高,使得市場份額迅速普及開來。

      從去年10月到今年10月Statcounter的數據顯示,國內排名前五的瀏覽器分別為IE(85.25%),Chrome(6.84%),遨游(3.21%),FireFox(3.02%),Safari(1.05%);而全球排名前五的瀏覽器為IE(42.24%),FireFox(26.38%),Chrome(24.95%),Safari(5.93%),Opera(1.8%)。由上述數據可以看出,微軟市場份額的下降給了其他瀏覽器更多的機會,同一時段內,Google Chrome 瀏覽器市場份額增長趨勢最為明顯,蘋果 Safari 瀏覽器的市場份額也一直在增長。

      根據瀏覽器的版本再細分,國內IE6.0,IE8.0,FireFox3.6,Chrome12.0的用戶數相對較多,而全球使用IE8.0,FireFox3.6,Chrome12.0,Safari5.0的用戶較多,其中,不論全球還是國內,雖然IE9.0目前的用戶數不多,但用戶數量呈明顯上升趨勢,不容忽視。

      淘寶是一個開放式的電子商務平臺,其子產品被劃分為不同的業務線,某些業務線由于前臺樣式展示和JS問題,對瀏覽器兼容性有強烈需求。Automan是淘寶網自主研發的一款用于UI自動化測試測試框架,目前Automan兼容了IE(6\7\8\9),FireFox3,Chrome,Safari。

      2)什么是瀏覽器兼容性

      W3C對標準的推進,結束了IE雄霸天下的日子,瀏覽器廠商為了取得更多的市場份額,會促使各瀏覽器更符合W3C標準,而得到更好的兼容,并且不同瀏覽器的擴展功能,對W3C的標準也是個推進。但是不同瀏覽器在處理一個相同的頁面時,表現有時會有差異,這種差異可能很小,也可能很大;即使是同一廠商的瀏覽器,不同的版本也出現不同的解釋方式。我們把引起這些差異的問題統稱為“瀏覽器兼容性問題”。

      3)出現兼容性問題的主要原因

      網頁瀏覽器的作用是在操作系統平臺中負責解釋、顯示網頁所包含HTML代碼的文件,并讓用戶與這些文件互動的一種客戶端應用程序。

      造成瀏覽器兼容性問題的根本原因,是各瀏覽器使用了不同的內核,并且他們處理同一件事情時候的思路不同。

      現今常見的瀏覽器及其渲染引擎及腳本引擎如下:

      從瀏覽器內核的角度來看,瀏覽器兼容性問題可以分為以下三類:

      1) 渲染相關:和樣式相關的問題,即體現在布局效果上的問題;

      2) 腳本相關:和腳本相關的問題,包括Javascript和DOM方面的問題;

      3) 其他類別:除以上兩類問題外的問題,一般是瀏覽器自身提供的功能,在瀏覽器內核層之上的。

      4)Automan如何實現瀏覽器兼容性

      Automan框架在不改動腳本和PageModel的情況下實現瀏覽器兼容性,使同一個腳本在不同的瀏覽器上完成腳本的執行。Client端通過choose_adapter這個文件(它相當于一個接口轉換器),當用戶選擇不同的瀏覽器進行自動化測試時,它會根據browser這個參數對相應的文件進行加載。

      5)兼容性中遇到的問題及其解決方案

      瀏覽器Html顯示方式不同

      在IE瀏覽器下tr標簽顯示異常,如下:

      在Chrome、FF瀏覽器下顯示正常,如下:

      TBODY的Html為:

      問題:

      當 selector = tr:nth-child(7)>td 時,在IE和Chrome、FF瀏覽器下會有差異,查找到的tr不是同一個,因為IE瀏覽器會把沒有關閉的兩個標簽加上。

      解決方案:

      更改selector寫法,直接定位到要查找的元素,改為 selector = tr:contains(處理后的文本為)>td,這樣就能正確獲取到元素了。

      瀏覽器Text值不同

      待校驗的文本:校驗碼錯誤

      IE瀏覽器下的Html如下:

      Chrome、FF瀏覽器下的Html如下:

      問題:

      IE瀏覽器下獲取到的Text的值為:”校驗碼錯誤 “,Chrome、FF瀏覽器下獲取到的Text的值為:”校驗碼錯誤”,腳本中有如下語句:CheckText.assert_equal(Text,”校驗碼錯誤 “),腳本在IE下能過,其他瀏覽器下失敗。

      解決方案:

      在獲取元素的Text的值時,用strip除去字符串開頭/結尾兩端的空白類字符,以保證各個瀏覽器下文本比對正確。(具體做法:Text.strip,注意:不是strip!)

      瀏覽器Text值取不到

      待比對的文本為:影響力1

      IE瀏覽器下該元素的Html:

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>