Beispiel #1
0
 def set_up(self,browser_name):
     log = logger()
     cmd = "netstat -an | grep '4444'|awk '{print $6}'"
     dir_path = os.path.abspath(os.path.join(os.path.dirname(__file__), os.pardir))
     browser_name = browser_name.decode('utf-8').lower()
     try:
         if browser_name == 'chrome':
             browser = webdriver.Chrome()
         elif browser_name == 'safari':
             subprocess.Popen(["java", "-jar",dir_path+"/Selenium/selenium-server-standalone-2.48.2.jar"],
                                 stdout=subprocess.PIPE,
                                 stderr=subprocess.PIPE)
             output = commands.getoutput(cmd)
             while 1:
                 if output == '':
                     time.sleep(1)
                     output = commands.getoutput(cmd)
                 else :
                     break
             browser = webdriver.Remote(desired_capabilities=webdriver.DesiredCapabilities.SAFARI)
         else:
             browser = webdriver.Firefox()
         return browser
     except Exception as er:
         pid = commands.getoutput("ps -eaf|grep -i 'selenium'|grep -v grep|awk '{print $2}'")
         if len(pid) != 0:
             log.log("[+] Force killing the process with signal at the beginning of testing")
             os.system("kill -9 "+ pid)
         log.log("[-] Error occur @set_up")
         log.log("[-] The Error is set up browser driver failed, details is "+str(er))
         sys.exit()
Beispiel #2
0
 def set_up(self,browser_name):
     log = logger()
     cmd = "netstat -an | grep '4444'|awk '{print $6}'"
     dir_path = os.path.abspath(os.path.join(os.path.dirname(__file__), os.pardir))
     browser_name = browser_name.decode('utf-8').lower()
     try:
         if browser_name == 'chrome':
             browser = webdriver.Chrome()
         elif browser_name == 'safari':
             subprocess.Popen(["java", "-jar",dir_path+"/Selenium/selenium-server-standalone-2.48.2.jar"],
                                 stdout=subprocess.PIPE,
                                 stderr=subprocess.PIPE)
             output = commands.getoutput(cmd)
             while 1:
                 if output == '':
                     time.sleep(1)
                     output = commands.getoutput(cmd)
                 else :
                     break
             browser = webdriver.Remote(desired_capabilities=webdriver.DesiredCapabilities.SAFARI)
         else:
             fp = webdriver.FirefoxProfile()
             fp.set_preference("network.proxy.type", 2)
             fp.set_preference("network.proxy.autoconfig_url",
                               "http://*****:*****@set_up")
         log.log("[-] The Error is set up browser driver failed, details is "+str(er))
         sys.exit()
 def get_user_email_address(self):
     log = logger()
     driver = self.driver
     try:
         email_address = driver.by_class_name(repo["login_email_address"]).text
         return str(email_address).lower()
     except Exception as e:
         log.log("[-] Error occur @get_user_email_address")
         log.log("[-] Error is " + str(e))
 def logout(self):
     log = logger()
     driver = self.driver
     try:
         driver.by_link_text(repo["logout"]).click()
         time.sleep(2)
     except Exception as e:
         log.log("[-] Error occur @logout")
         log.log("[-] Error is " + str(e))
 def navigate_to_help(self):
     log = logger()
     driver = self.driver
     try:
         driver.by_link_text(repo["navigation_help"]).click()
         time.sleep(3)
     except Exception as e:
         log.log("[-] Error occur @navigate_to_help")
         log.log("[-] Error is " + str(e))
Beispiel #6
0
 def navigate_to_hao123(self):
     log = logger()
     driver = self.driver
     try:
         Element(driver,'HomePage','Hao123').get().click()
         time.sleep(3)
     except Exception as e:
         log.log('[-] Error occur @navigate_to_hao123')
         log.log('[-] Error is '+str(e))
 def navigate_to_notification_group(self):
     log = logger()
     driver = self.driver
     try:
         driver.by_link_text(repo['navigation_notification_group']).click()
         time.sleep(3)
     except Exception as e:
         log.log('[-] Error occur @navigate_to_notification_group')
         log.log('[-] Error is '+str(e))
 def navigate_to_home(self):
     log = logger()
     driver = self.driver
     try:
         driver.by_link_text(repo['navigation_home']).click()
         time.sleep(2)
     except Exception as e:
         log.log('[-] Error occur @navigate_to_home')
         log.log('[-] Error is '+str(e))
 def navigate_to_sub_links(self, link_text):
     log = logger()
     driver = self.driver
     try:
         driver.by_link_text(repo["navigation_request_cert"]).click()
         driver.by_partial_link_text(link_text).click()
         time.sleep(2)
     except Exception as er:
         log.log("[-] Error occur @navigate_to_sub_menu")
         log.log("[-] Error is " + str(er))
Beispiel #10
0
 def search(self,search_text):
     log = logger()
     driver = self.driver
     try:
         Element(driver,'HomePage','Search').get().send_keys(search_text)
         time.sleep(1)
         Element(driver,'HomePage','BaiDu').get().click()
     except Exception as e:
         log.log('[-] Error occur @search')
         log.log('[-] Error is '+str(e))
Beispiel #11
0
 def kill_selenium_process(self):
     pid = commands.getoutput("ps -eaf|grep -i 'selenium'|grep -v grep|awk '{print $2}'")
     log = logger()
     try:
         log.log("[+] Kill the running selenium process")
         os.system('kill -9 '+pid)
     except Exception as er:
         if len(pid) !=0:
             log.log("[-] Failed to kill the process but force it to")
             log.log("[-] Error is "+str(er))
             os.system('kill -9 '+pid)
 def login_as(self,username='',password=''):
     log = logger()
     driver = self.driver
     try:
         driver.by_id(repo['username']).send_keys(username)
         driver.by_id(repo['password']).send_keys(password)
         driver.by_xpath(repo['login_submit']).click()
         time.sleep(3)
     except Exception as e:
         log.log('[-] Error occur @login_as')
         log.log('[-] Error is '+str(e))
Beispiel #13
0
 def kill_selenium_process(self):
     pid = commands.getoutput("ps -eaf|grep -i 'selenium'|grep -v grep|awk '{print $2}'")
     log = logger()
     try:
         log.log("[+] Kill the running selenium process")
         os.system('kill -9 '+pid)
     except Exception as er:
         if len(pid) !=0:
             log.log("[-] Failed to kill the process but force it to")
             log.log("[-] Error is "+str(er))
             os.system('kill -9 '+pid)
 def navigate_to_sub_menu(self, sub_menu_name):
     log = logger()
     driver = self.driver
     try:
         driver.by_link_text(repo["navigation_request_cert"]).click()
         sub_menu_lists = driver.find_elements_by_xpath(repo["certificate_requests"])
         for sub_menu_item in sub_menu_lists:
             sub_menu_innerHTML = sub_menu_item.text.encode("utf-8").lower()
             if sub_menu_innerHTML == sub_menu_name.lower():
                 sub_menu_item.click()
                 time.sleep(2)
                 break
     except Exception as er:
         log.log("[-] Error occur @navigate_to_sub_menu")
         log.log("[-] Error is " + str(er))
Beispiel #15
0
class EndToEndModule(__init__):

    log = logger()

    @classmethod
    def setUpClass(cls):
        try:
            super(EndToEndModule, cls).setUpClass()

        except Exception:
            cls.log.log(
                '[+] Trying to start a webdriver but not the first one')
            cls.DRIVER = ControllerRunner.Runner('chrome')
            cls.DRIVER.open(__init__.url)

    @classmethod
    def tearDownClass(cls):
        super(EndToEndModule, cls).tearDownClass()

    def setUp(self):
        self.suite_name = "%s.%s" % (self.__class__.__module__,
                                     self.__class__.__name__)
        self.case_name = self.id().split('.')[-1]
        self.now_handle = self.DRIVER.get_window_handle()

    def test_search(self):
        try:
            self.DRIVER.search('selenium')
            self.assertIn('selenium', self.DRIVER.get_title())
            TestResult().addSuccess(self.suite_name, 0, self.case_name, '')
        except AssertionError as ae:
            TestResult().addFail(self.suite_name, 1, self.case_name, str(ae))
        except Exception as e:
            TestResult().addError(self.suite_name, 2, self.case_name, str(e))

    def tearDown(self):
        pass
 def __init__(self,browser):
     Base.__init__(self,browser)
     self.log = logger()