导航栏测试:测试点:1.导航栏中名称是否正确 2.导航栏中分类的跳转链接是否可用 3.跳转界面是否正确
python 语言才学习基础,可能书写的代码不是最"干净" 请谅解。(会在以后进行优化)
导航图片:
导航的html代码:
导航栏的资讯分类数据:EXCEL文件
编写的代码:
#-*- coding: utf-8 -*- from selenium import webdriver from selenium.common.exceptions import TimeoutException from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.common.keys import Keys from selenium.webdriver.support.ui import Select import string import unittest import re import time import xlrd import xlwt import urllib2 class TEST(unittest.TestCase): def setUp(self): self.driver=webdriver.Ie(r"C:\\IEDriver\\IEDriverServer.exe") time.sleep(3) self.verificationErrors=[] def test_WebTest1(self): dr=self.driver dr.get("http://localhost:8080/search/admin.do") dr.find_element_by_id("username").send_keys("ww") dr.find_element_by_id("password").send_keys("ww") dr.find_element_by_id("ext-gen17").click() dr.get("http://localhost:8080/search/") filename="E:/testdate/test_nav.xlsx"#定义excel文件地址,放置的导航栏的分类 excel=xlrd.open_workbook(filename,encoding_override="utf-8")#定义读取Excel sheet =excel.sheet_by_index(0) nrows = sheet.nrows#获取excel的行数 print nrows ncols = sheet.ncols#获取excel的列数 print ncols for i in range(nrows):#遍历excel中的数据 if sheet.row(i)[0].value.strip(' ')=='资讯': strs=dr.find_element_by_xpath("/html/body/div/div/div[2]/table").text str_type=sheet.row(i)[1].value.strip(' ') if str_type in strs: #p=str.index(str_type) print "%s 存在 ! " % str_type link_rpr='a[title=\"'+'资讯-'+str_type+'\"]' print link_rpr #dr.find_element_by_link_text(str_type).click()#link text定位 #dr.find_element_by_css_selector(link_rpr).click()#css定位 try: dr.find_element_by_css_selector(link_rpr).click() print "链接存在!" except: print "链接不存在!" continue time.sleep(2) else : print "%s 不存在!"%str_type continue #dr.find_element_by_css_selector("div#header-nav>a>img").click()#css定位返回首页 dr.back() if sheet.row(i)[0].value.strip(' ')=='研报': strs=dr.find_element_by_xpath("/html/body/div/div/div[2]/table[2]").text str_type=sheet.row(i)[1].value.strip(' ') if str_type in strs: print "%s 存在 ! " % str_type link_rpr='a[title=\"'+'大行研报-'+str_type+'\"]' #dr.find_element_by_link_text(str_type).click()#link text定位 try: dr.find_element_by_css_selector(link_rpr).click() print "链接存在!" except: print "链接不存在!" continue time.sleep(2) else : print "%s 不存在!"%str_type continue dr.back() if sheet.row(i)[0].value.strip(' ')=='公告': strs=dr.find_element_by_xpath("/html/body/div/div/div[2]/table[3]").text str_type=sheet.row(i)[1].value.strip(' ') if str_type in strs: print "%s 存在 ! " % str_type dr.find_element_by_link_text(str_type).click()#link text定位 try: dr.find_element_by_css_selector(link_rpr).click() print "链接存在!" except: print "链接不存在!" time.sleep(2) else : print "%s 不存在!"%str_type continue dr.back() def testdown(self): self.driver.quit() self.assertEqual([], self.verificationErrors) if __name__=='__main__': unittest.main()