python Appium遇到問題

2022-07-20 17:09:06 字數 1987 閱讀 5758

使用引數化來跑test case

@parameterized.expand([

('[email protected]', '123456',''),

('[email protected]', '123455','password incorrect'),

('[email protected]', '123456','account does not exist')

])# @common.getimage

def test_login(self,username,password,message):

logging.info('**********test_login*****===')

user = login(self.driver)

self.asserttrue(user.login_action(self.driver,username,password))

if message == '':

self.asserttrue(user.check_login_status(username))

else:

self.asserttrue(user.check_toast(message))

sleep(3)

-----------------------------

遇到問題:

當使用三個用例引數組合去跑

中間那個會識別不到toast,看到現象就是感覺程序很快被殺掉進行下個用例引數

然後報

selenium.common.exceptions.webdriverexception: message: an unknown server-side error occurred while processing the command. original error: could not proxy command to remote server. original error: error: socket hang up

若單獨允許該用例,則成功

目前正在查詢原因。

呼叫函式報錯:

self.input_text(*self.entername,username)

typeerror: input_text() missing 1 required keyword-only argument: 'text'

被調函式:

def input_text(self,*loc,text):
'''

封裝輸入操作函式

'''self.input = self.find_element(*loc)

self.input.clear()

self.input.send_keys(text)

呼叫函式:

* 的引數會以元組(tuple)的形式匯入,存放所有未命名的變數引數。

加了兩個星號** 的引數會以字典的形式匯入

第一種形式的不定長引數,在傳入額外的引數時可以不用指明引數名,直接傳入引數值即可,第二種因為返回的是字典,所以傳入時需要指定引數名。

例子:

1 def funa(a, b, *args):

2 print(a)

3 print(b)

4 print(args)

5 6

7 funa(1, 2, 3, 5, 6, 7)

輸出如下:12

(3, 5, 6, 7)

args為後面所有的引數,以元組方式呈現:(3, 5, 6, 7)

所以就回答了本來的那個報錯,因為

input_text(self,*loc,text)第乙個引數為不定長引數,所以它把後面的引數全部傳給*loc,text就讀不到值

解決方式很簡單:

將不定長引數放最後

python Appium環境搭建

第 一 安裝和配置android sdk 關於安裝和配置android sdk的方式,可以檢視下面的鏈結 第 二 安裝node.js 檢查node.js是否正常 node v 安裝過程比較簡單,基本上都是下一步 第 四 安裝python python安裝步驟在此,忽略下面是python的環境變數配置...

electron vue build遇到的問題

受限於牆以及網路環境,很多人在嘗試打包electron程式時都會碰到各種問題,下面以electron vue模板為例 打包使用electron builder windows環境下,一步步解決打包時所遇到的錯誤。下面三個檔案操作同步驟2 3.wincodesign 1.9.0.7z 4.nsis 3...

jQuery nyroModal 外掛程式遇到問題

nyromodal ver 1.6.2 彈出層外掛程式 瀏覽更多 初始化大小問題 頁面載入完成後初始化 設定大小 function 多 nyromodal 彈出層自定義大小 前面解決了預設大小設定問題,但針對所有彈出層此設定都是有效的,當乙個頁面有多個彈出層,而且彼此大小不一致時,該如何解決?在標籤...