title: selenium webdriver python - make selenium test case fail if there is error in custom written python code
body: <p>I have a selenium webdriver test case exported to python using selenium IDE. Then wanted to add some additional functionality so inserted custom code in between the selenium test case.</p>
  
  <p>Now the problem is - if i make a mistake or the custom written python code returns error - still the selenium test case continues to execute</p>
  
  <p>Whereas i want the selenium test case execution to be stopped if there is such error. Have replicated the scenario below with a simple google search followed by a log movement code using shutil module</p>
  
  <pre><code>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
  import os, shutil
  
  class SeleniumException(unittest.TestCase):
      def setUp(self):
          self.driver = webdriver.Chrome()
          self.driver.implicitly_wait(30)
          self.base_url = "https://www.google.co.in/"
          self.verificationErrors = []
  
          self.attachment = 1
          self.file_source_location = "F:\\python_test\\logfiles\\"
          self.file_move_location = "F:\\logfiles_back\\"
  
      def test_selenium_exception(self):
          driver = self.driver
          driver.get(self.base_url + "/")
          driver.find_element_by_id("gbqfq").clear()
          driver.find_element_by_id("gbqfq").send_keys("Check this out")
          if self.attachment:
              try:
                  for contents in os.listdir(self.file_source_location):
                      src_file = os.path.join(self.file_source_location, contents)
                      dst_file = os.path.join(self.file_move_location, contents)
                      shutil.move(src_file, dst_file)
                  print'files_moved_success'
                  driver.find_element_by_link_text("check out - definition of check out by the Free Online Dictionary ...").click()
              except Exception as e:
                  print e
  
      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()
  </code></pre>
  
  <p>In this code - If the movement from logfiles to logfiles_back fails due to reasons like wrong path ...Etc the catch block is executed and i want the selenium test case to quit reporting an error</p>
  
  <p>What is happening right now is it reports the error and completes the execution of the test case</p>
  
  <p>How to make this possible ?</p>