1. 程式人生 > >自動化測試selenium簡單應用

自動化測試selenium簡單應用

#coding:utf-8 ''' Created on 2018年8月6日

@author: linhuajian ''' from selenium import webdriver import unittest from HTMLTestRunner import HTMLTestRunner from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.common.by import By

import time from selenium.webdriver.common.action_chains import ActionChains class nova(unittest.TestCase):     def setUp(self):         self.driver = webdriver.Chrome()                  self.url = "http://care.novaicare.com"     def iscunzai(self):         driver=self.driver         try:             driver.find_element_by_xpath('//*[@id="lableTable"]/tbody/tr[7]/td[2]/a')             return True         except:             return False     def xiansp(self):         u'''埋點自動化測試報告:顯示屏列表'''         #登入模組         driver=self.driver         driver.get(self.url)         self.driver.maximize_window()         driver.implicitly_wait(20)                  driver.find_element_by_xpath('//*[@id="username"]').clear()         driver.find_element_by_xpath('//*[@id="username"]').send_keys("linhuajian")         driver.find_element_by_xpath('//*[@id="password"]').clear()         driver.find_element_by_xpath('//*[@id="password"]').send_keys("123456")         driver.find_element_by_xpath('//*[@id="loginform"]/button').click()                       time.sleep(1)         time.sleep(1)          driver.find_element_by_xpath('/html/body/div[16]/div/div[5]/a[1]').click()         #點選百寶箱          time.sleep(3)                  above=driver.find_element_by_xpath('//*[@id="app"]')         ActionChains(driver).move_to_element(above).perform()         #點選顯示屏列表         driver.find_element_by_xpath('//*[@id="moreAPPs"]/ul[3]/li[1]/a').click()                 ###############顯示等等                time.sleep(3)         WebDriverWait(driver,10,0.5).until(EC.presence_of_element_located((By.XPATH,'//*[@id="all"]')))                  driver.find_element_by_xpath('//*[@id="lableTable"]/tbody/tr[7]/th/input').click()                  #選中進行批量編輯         #driver.find_element_by_xpath('//*[@id="all"]').click()         time.sleep(1)         if self.iscunzai():             print 'Exist'                  #點選批量刪除         #driver.find_element_by_xpath('//*[@id="delete-lable"] ').click()         driver.find_element_by_xpath('//*[@id="delete-lable"]').click()         time.sleep(1)         driver.find_element_by_xpath('//*[@id="myName"]/div/div/div[3]/button[1]').click()                           if self.iscunzai():             print 'successfully delete'         #點選取消         #driver.find_element_by_xpath('//*[@id="myName"]/div/div/div[3]/button[2]').click()                 #點選顯示屏com4         #driver.find_element_by_xpath('//*[@id="lableTable"]/tbody/tr[2]/td[2]/a').click()     

             def tearDown(self):         self.driver.quit()  

if __name__ == "__main__":                  testunit=unittest.TestSuite()     testunit.addTest(nova("xiansp"))     fp=open('F:\\result.html','wb')        runner=HTMLTestRunner(stream=fp,                           title=u'測試報告',                           description=u'自動化測試報告:')     runner.run(testunit)                print 'OK'     fp.close()