サイトに移動し、twitter を使用してサイトに登録しようとする簡単なテストを実行しようとしています。なんらかの理由で、Twitter ボタンをクリックするとテストが停止し、ログイン ウィンドウがポップアップします。Google、セレン ユーザー グループ、またはスタック オーバーフローを検索している間、(少なくとも今までは) 何も見つかりませんでした。他の誰かが同様の問題に遭遇したかどうか、または非常に単純なものが欠けているかどうか疑問に思っています。前もって感謝します。コードは以下のとおりです。
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import Select
from selenium.common.exceptions import NoSuchElementException
import unittest, time, re
class TwReg(unittest.TestCase):
def setUp(self):
self.driver = webdriver.Firefox()
self.driver.implicitly_wait(30)
self.base_url = "sitename"
self.verificationErrors = []
def test_tw_reg(self):
driver = self.driver
driver.get(self.base_url + "/")
driver.find_element_by_id("tw_one_click_btn").click()
def is_element_present(self, how, what):
try: self.driver.find_element(by=how, value=what)
except NoSuchElementException, e: return False
return True
def tearDown(self):
self.driver.quit()
self.assertEqual([], self.verificationErrors)
if __name__ == "__main__":
unittest.main()
何が起こっているのかを明確に表現していることを確認するため。上記のコードは、twitter sing in ウィンドウがポップアップした後に終了するはずですが、代わりにその時点で単にハングします。このコードは、Selenium の IDE によって生成されます。再度、感謝します。