0
私は最近、メールサービスのGmailの例で自動テストを学び始めました。私はループでキャプチャを呼び出そうとしましたが、予想される条件がどのように機能するのか理解できませんでした。どのように私は関数を正しくプログラムを完了することがありますか?英語ですみません。期待された条件から関数を呼び出す方法
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.support.ui import WebDriverWait
class my:
def loop_send_keys(self):
while (True):
self.email.send_keys("a")
self.email.submit()
if (self.captcha.is_displayed()):
return self.driver.find_elements(self, By.ID, "captcha-img") # Problem in this line
def launch(self):
self.a = False
driver = webdriver.Firefox()
self.driver = driver
driver.get("https://mail.google.com/")
driver.implicitly_wait(4)
self.email = driver.find_element_by_name("Email")
self.email.send_keys("sndb11")
self.captcha = self.driver.find_element_by_id("captcha-img")
WebDriverWait(driver, 10).until(
EC.presence_of_all_elements_located(By.ID, self.loop_send_keys()) # and this
)
a = my()
a.launch()