在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/Java  Python/ python+Selenium測試框架無法定位元素?

python+Selenium測試框架無法定位元素?

clipboard.png

上述代碼是只顯示幾秒的提示小窗口,用很普通的定位方式可以獲取到這個Text

clipboard.png

但到了測試框架中,就無法定位元素獲取Text,不知是什么原因?

測試代碼A頁面:

class LoginPage(Base):
'''定位提示窗口,封裝對象‘’’

url = ''

login_username_error_loc = (By.CLASS_NAME, "jq_tips_info")

def login_username_error(self):
    return self.find_element(*self.login_username_error_loc).text

def login_action(self, username, password):
    self.login_username(username)
    self.login_password(password)
    self.login_button()
    sleep(5)
    

測試代碼B頁面:

class LoginTest(myunit.MyTest):
'''執(zhí)行測試用例

def test_login_user_pwd_null(self):
    ''''用戶名、密碼為空登錄'''
    po = LoginPage(self.driver)
    po.open()//打開URL
    po.login_action('', '')//輸入用戶名和密碼為空,單擊登陸按鈕
    sleep(2)
    print(po.login_username_error())**//輸出提示信息,出錯點在此。未定位到元素**
    self.assertEqual(po.login_username_error(), '用戶名不得為空')
    function.insert_img(self.driver, 'user_pwd_null.png')

請問各位大神,這如何修改或排查哪些部分?

回答
編輯回答
舊城人

這是令人心痛的問題!TvT

主要原因是在類login_action中加了Sleep(5),提示信息最多存在2,3秒,導致無法定位元素!

2018年6月25日 13:34