title: InvalidArgumentException: Message: invalid argument: 'using' must be a string
body: <p>im very new to python, trying to create reusable code. when i try to call the class Login and function login_user in test_main.py by passing all the arguments that were used under Login class, im getting an error as InvalidArgumentException: Message: invalid argument: 'using' must be a string.</p>
  
  <p>test_main.py file which runs on pytest.</p>
  
  <p>Locators_test is the class of test_Locators.py file where i have all my xpaths</p>
  
  <p>test_Locators.py</p>
  
  <pre><code>class Locators_test():
  
  loginlink_xpath = "//a[@id='login-link']"
  login_email = "xxxxx"
  login_password = "xxxxx"
  loginemail_id = "dnn_ctr1179_Login_txtEmail"
  loginpassword_id = "dnn_ctr1179_Login_txtPassword"
  clicklogin_id = "dnn_ctr1179_Login_btnLogin"
  </code></pre>
  
  <p>test_login.py</p>
  
  <pre><code>from Smoketest.locatorfile.test_Locators import Locators_test
  
  class Login():
  
  def __init__(self,driver):
  
      self.driver = driver
  
  def login_user(self,driver):
      try:
          loginButton = self.driver.find_element((By.XPATH, Locators_test.loginlink_xpath))
          while loginButton.click() is True:
              break
          time.sleep(3)
          self.driver.execute_script("window.scrollBy(0,300);")
  
          EmailField = self.driver.find_element((By.ID, Locators_test.loginemail_id))
          EmailField.send_keys(Locators_test.login_email)
  
          PasswordField = self.driver.find_element((By.ID, Locators_test.loginpassword_id))
          PasswordField.send_keys(Locators_test.login_password)
  
          ClickLogin = self.driver.find_element((By.ID, Locators_test.clicklogin_id))
          while ClickLogin.click() is True:
              break
  
          time.sleep(5)
  
          userName = self.driver.find_element((By.XPATH, Locators_test.username_xpath))
          print("Logged in as", userName.text)
  
  
  
      except StaleElementReferenceException or ElementClickInterceptedException or TimeoutException as ex:
          print(ex.message)
  </code></pre>
  
  <p>test_main.py</p>
  
  <pre><code>    def test_setup():
          driver = webdriver.Chrome(executable_path= Locators_test.browser_path)
          driver.maximize_window()
          driver.delete_all_cookies()
          driver.get(homePage)
          driver.implicitly_wait(5)
          yield
          print("test complete")
  
  
  def test_login(test_setup):
  
      from Smoketest.pages.test_login import Login
  
      lo = Login(driver)
  lo.login_user(((Locators_test.loginlink_xpath,Locators_test.loginemail_id,Locators_test.login_email,Locators_test.loginpassword_id,Locators_test.login_password,Locators_test.clicklogin_id,Locators_test.username_xpath)))
  </code></pre>
  
  <p><strong><em>indentations are all fine</em></strong></p>