自動化過程遇到的問題整理


1、安裝Maven依賴后,在執行testng用例時一直報錯誤,在maven的本地倉庫路徑下的org目錄,沒有aspectj后面一串的內容,不確定是否是依賴沒有下載完畢,使用的遠程電腦辦公,網絡非常慢

 

 解決方法: 

1)發現是在pom.xml中配置的Allure報告的時候配置了這個路徑,應該是少安裝了東西,暫時先去掉就可以了

2)后面發現是由於網絡原因,本地倉庫沒有下載下來

 

2、腳本發現出現了一個報錯:Element is not clickable at point (1648, 30). Other element would receive the click

分析原因,首先肯定不是因為頁面元素不存在而無法點擊,實際上這個頁面元素是存在的,而是被另外一個彈層擋住了。

 

 解決方法:

1)用鍵盤sendKeys(Keys.ENTER)代替click,發現仍報錯: unknown error: cannot focus element,是因為選擇的點擊的元素不是input類型的,無法聚焦到元素,此辦法行不通

2)封裝的元素是用的智能等待,直接不用,用硬性等等Thread.sleep(3000),問題解決了

 

3、在進行接口自動化,執行登錄接口,發現只執行了父類方法中的初始化和結束,沒有調用登錄接口

 解決方法:代碼問題,在解析excel數據時,比較用的是String類型, 在定義變量里用的int類型, 還有就是識別@excel (name = ”“) 名稱與excel用例的標題的名稱不匹配,導致識別不到參數,修改就好了

4、接口自動化時,進行https請求時,發生報錯

查了問題發現是:所請求的網站域名和服務器上的證書中的域名不符,導致請求方域名不匹配的異常

解決辦法:

1)服務器導入證書

把網址的證書導出放到jre目錄下C:\Program Files\Java\jre1.8.0_65\lib\security,打開cmd 

a keytool -importcert -trustcacerts -alias glfeed -file glfeed.cer -keystore -trustcacerts     (glfeed.cer 證明名稱)

b 輸入密鑰庫口令:changeit

c 提示:“是否信任此證書? [否]:” ,那么請輸入"y", 解決

2)代碼解決忽略證書問題

5、接口自動化時,解析excel用例斷言時,發生java.net.SocketException: Software caused connection abort: socket write error錯誤,發現表格在回寫斷言結果時,回寫內容為空

 解決辦法:

發現是期望斷言結果中json格式的參數少了一個"號引起的,加上后問題解決

6、執行接口自動化https請求時,發生錯誤 

  解決辦法:

升級jdk的版本,具體參考文章 https://blog.csdn.net/kevin_mails/article/details/82143490

7、在執行接口自動化時,報錯信息如下“com.alibaba.fastjson.JSONException: unclosed string ” ,查了下說是json轉換時出錯,當時檢查了很久,不知道是哪里寫錯,后面發給別人看,一眼看出是少了個“,真是當局者迷呀

 解決辦法:

修改json格式路徑

 

8、在執行get請求時,想請求一個異常的用例,即本來URL是不帶參數的,故意在url后加上參數,查看請求結果,於是在代碼中直接

if ("get".equalsIgnoreCase(api.getApiReqMethod())) {
    if (cases.getCaseDes().contains("URL帶參數請求")) {
         url = api.getApiUrl() + "?" + "service_button =1";

}然后發生了如下錯誤,度娘查了說是 地址中涉及了特殊字符,如‘?’‘&’等。

 解決方案:

 原來是"service_button =1"; 等號前面多了一個空格,去掉空格后問題解決

網上查了很多是說用以下的方式解決

1、必須采用%0xXX方式來替代特殊字符

2、先把String轉成URL,再能過URL生成URI的方法來解決問題

但是方案二的解決方案不適用於我的項目,所以采用了方案一,試了下,打印出來的url直接以%3F,沒法請求

 

9、由於公司接口設置有限制,即執行20次時會判定頻繁操作,在實際項目時,一個接口有多個用例,且一個用例要執行三次,所有有容易就超過了20次,導致接口失敗,報頻繁操作的錯誤

解決辦法: 在每次調用接口前,設置等待時間


免責聲明!

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



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