[PYTHON] 셀레늄 - visibility_of_element_located : __init __ ()은 정확히 2 개의 인수 (3 개)를 취합니다.
PYTHON셀레늄 - visibility_of_element_located : __init __ ()은 정확히 2 개의 인수 (3 개)를 취합니다.
Selenium Python Bindings를 사용하는 테스트 코드에서이 오류가 발생합니다.
> twitter_campaigns = wait.until(EC.visibility_of_element_located(By.CSS_SELECTOR, TWITTER_CAMPAIGNS))
E TypeError: __init__() takes exactly 2 arguments (3 given)
그리고 이것은 Im가 실행하는 것입니다.
class TestTwitter(TestLogin, TestBuying):
def setup(self, timeout=10):
self.driver = webdriver.Firefox()
self.driver.get(BASEURL)
self.driver.implicitly_wait(timeout)
def test_campaigns_loaded(self, timeout=10):
self.signin_action()
self.view_twitter_dashboard()
self.select_brand()
wait = WebDriverWait(self.driver, timeout)
twitter_campaigns = wait.until(EC.visibility_of_element_located(By.CSS_SELECTOR, TWITTER_CAMPAIGNS))
assert True == twitter_campaigns
def teardown(self):
self.driver.close()
그래서 왜 내가 위의 오류를 얻는 지 궁금하네요. 나는 모든 클래스에서 __init __ () 메서드를 정의하지 않았습니다. 대신 pyTest처럼 setUp 및 tearDown 메서드를 정의했습니다. 어떤 아이디어가 왜 3 개의 인수를 취하는가?
해결법
-
==============================
1.질문해야 할 질문은 "왜 3 개의 인수를 취하는가"가 아니라 "3 개의 인수를 취하는 이유"입니다. 추적 코드는 코드의 특정 라인을 가리키며 문제가있는 곳입니다.
질문해야 할 질문은 "왜 3 개의 인수를 취하는가"가 아니라 "3 개의 인수를 취하는 이유"입니다. 추적 코드는 코드의 특정 라인을 가리키며 문제가있는 곳입니다.
여기 Selenium Python 문서에 따르면 selenium.webdriver.support.expected_conditions.visibility_of_element_located는 튜플로 호출해야합니다. 그것은 함수는 아니지만 사실은 클래스는 암시 적 자체를 넘어선 1 개의 인수를 기대하는 이니셜 라이저입니다.
class visibility_of_element_located(object): # ... def __init__(self, locator): # ...
따라서 visibility_of_element_located를 두 개의 중첩 괄호로 호출해야합니다.
wait.until(EC.visibility_of_element_located( ( By.CSS_SELECTOR, TWITTER_CAMPAIGNS ) ))
즉, 3 개의 인수 self, By.CSS_SELECTOR 및 TWITTER_CAMPAIGNS 대신 visibility_of_element_located .__ init__은 예상되는 2 개의 인수 인 암시 적 자체 및 locator : a (유형, 표현식) 튜플로 호출됩니다.
from https://stackoverflow.com/questions/23661734/selenium-visibility-of-element-located-init-takes-exactly-2-arguments by cc-by-sa and MIT license
'PYTHON' 카테고리의 다른 글
[PYTHON] 큰 Numpy 배열 작업을위한 기술? (0) | 2018.10.21 |
---|---|
[PYTHON] Python : PyQt 팝업 창 (0) | 2018.10.21 |
[PYTHON] Python Twisted JSON RPC (0) | 2018.10.21 |
[PYTHON] Matplotlib 3D scatter 애니메이션 (0) | 2018.10.20 |
[PYTHON] 업데이트 후 파이썬 및 virtualenvwrapper 문제 : virtualenvwrapper라는 모듈 없음 (0) | 2018.10.20 |