在些先聲明,如果觸犯到了HP的利益,實(shí)屬無(wú)心。
迫于QTP對(duì)自定義控件的識(shí)別局限,和項(xiàng)目的需要,無(wú)奈之下對(duì)QTP做了全面的體檢,安裝目錄下的每個(gè)文檔都研究了一遍,只為了找出QTP識(shí)別自定義控件的根本方法,經(jīng)過(guò)一些努力,有所收獲,在些拿來(lái)和大家分享一下,也要感謝陳能技大哥的那篇文章:QTP對(duì).NET自定義控件的擴(kuò)展。
其實(shí)QTP的對(duì)象識(shí)別核心思想,分成兩種,一種是封裝好的DLL,另一種是XML標(biāo)記語(yǔ)言描述,這兩種文件里面都是封裝的一些標(biāo)準(zhǔn)控件,各種插件安裝后也是如此,QTP先會(huì)讀取這些文件,然后會(huì)把它里面的對(duì)象類別加載到一個(gè)文件,每次QTP啟動(dòng)的時(shí)候,根據(jù)選擇的ADD_IN去加載控件支持,在錄制和回放腳本的時(shí)候拿這些對(duì)象屬性去對(duì)比獲得的對(duì)象屬性,如果屬性和方法相同則能識(shí)別,介于這個(gè)思想,我們就不用再對(duì)QTP的插件保持它的神秘感了,對(duì)于9.5以下的版本,QTP安裝插件都需要插件有權(quán)限,所以我們其實(shí)可以在QTP自帶的對(duì)象描述文件夾中,把沒(méi)有權(quán)限的插件的對(duì)象描述COPY進(jìn)去,或者也可以自己開(kāi)發(fā)插件,然后對(duì)QTP的文件進(jìn)行修改就行了,而對(duì)于自定義的控件,我們也可以在XML文件里面增加或修改控件描述,讓QTP識(shí)別它,就說(shuō)這些吧,還有些具體的技術(shù)細(xì)節(jié)沒(méi)有搞清楚,等都OK了再進(jìn)行補(bǔ)充。
迫于QTP對(duì)自定義控件的識(shí)別局限,和項(xiàng)目的需要,無(wú)奈之下對(duì)QTP做了全面的體檢,安裝目錄下的每個(gè)文檔都研究了一遍,只為了找出QTP識(shí)別自定義控件的根本方法,經(jīng)過(guò)一些努力,有所收獲,在些拿來(lái)和大家分享一下,也要感謝陳能技大哥的那篇文章:QTP對(duì).NET自定義控件的擴(kuò)展。
其實(shí)QTP的對(duì)象識(shí)別核心思想,分成兩種,一種是封裝好的DLL,另一種是XML標(biāo)記語(yǔ)言描述,這兩種文件里面都是封裝的一些標(biāo)準(zhǔn)控件,各種插件安裝后也是如此,QTP先會(huì)讀取這些文件,然后會(huì)把它里面的對(duì)象類別加載到一個(gè)文件,每次QTP啟動(dòng)的時(shí)候,根據(jù)選擇的ADD_IN去加載控件支持,在錄制和回放腳本的時(shí)候拿這些對(duì)象屬性去對(duì)比獲得的對(duì)象屬性,如果屬性和方法相同則能識(shí)別,介于這個(gè)思想,我們就不用再對(duì)QTP的插件保持它的神秘感了,對(duì)于9.5以下的版本,QTP安裝插件都需要插件有權(quán)限,所以我們其實(shí)可以在QTP自帶的對(duì)象描述文件夾中,把沒(méi)有權(quán)限的插件的對(duì)象描述COPY進(jìn)去,或者也可以自己開(kāi)發(fā)插件,然后對(duì)QTP的文件進(jìn)行修改就行了,而對(duì)于自定義的控件,我們也可以在XML文件里面增加或修改控件描述,讓QTP識(shí)別它,就說(shuō)這些吧,還有些具體的技術(shù)細(xì)節(jié)沒(méi)有搞清楚,等都OK了再進(jìn)行補(bǔ)充。