封装操作表格的公用类(webdriver)

  
 <代码> Table.py
  
  1,可以用通过先定位到整个表表格对象;
  2,再通过表格对象定位到行对象;
  3,通过行对象再定位单元格对象;
  4,通过单元格对象再定位单元格里面的元素对象
  
  #=utf - 8编码
  类表(对象):
  
  __table=没有
  
  def __init__(自我、表):
  self.setTable(表)
  
  def可变的(自我、表):
  自我。__table=表#此处传入的是整个表格对象
  
  def可以获得的(自我):
  返回self.__table
  
  def getRowCount(自我):
  #返回表对象中所有的行tr标签元素对象
  返回len (self.__table.find_elements_by_tag_name (tr))
  
  #获取表格中的列数
  def getColumnCount(自我):
  返回len (self.__table.find_elements_by_tag_name (tr) \ [0]
  find_elements_by_tag_name (td))
  
  #获取表格中某行某列单元格对象
  def getElementCell(自我、rowNo colNo):
  试一试:
  #先找到某一个行对象
  currentRow=self.__table.find_elements_by_tag_name (tr) [rowNo-1]
  #然后根据行找到该行中的某一列
  currentCol=currentRow.find_elements_by_tag_name (td) (colNo - 1)
  #返回该某行某列的单元格
  返回currentCol
  除了例外e:
  e
  
  #获取表格中某行某列单元格中的元素对象
  def getWebElementInCell(自我、rowNo colNo,值):
  #:定位方式值:定位表达式
  试一试:
  currentRow=self.__table.find_elements_by_tag_name (tr) (rowNo - 1)
  currentCol=currentRow.find_elements_by_tag_name (td) (colNo - 1)
  
  #然后再根据单元格找到定位到元素对象
  元素=currentCol.find_element(的价值)
  
  #返回元素对象
  返回元素
  除了例外e:
  e
  
  Test_table.py
  
  #=utf - 8编码
  从硒进口webdriver
  导入时间,回溯
  从表导入表
  进口unittest
  
  类TestTable (unittest.TestCase):
  
  def设置(自我):
  自我。司机=webdriver。铬(executable_path=癲: \ \ chromedriver”)
  
  def test_table(自我):
  url=" http://127.0.0.1/test_table.html "
  self.driver.get (url)
  试一试:
  #获取表元素
  
  表=self.driver.find_element_by_tag_name(“表”)
  #获取表实例对象
  tableIns=表(表)
  
  #获取表格的行数
  print (tableIns.getRowCount ())
  
  #获取表格的列数
  print (tableIns.getColumnCount ())
  
  2 #获取第行第3列单元格对象
  细胞=tableIns.getElementCell (2、3)
  打印(细胞)
  打印(“第2行3列第单元格内容:“,cell.text)
  
  2 #获取第行第3列文本输入框元素对象
  cellInput=tableIns。getWebElementInCell(2、3、“标记名称”、“输入”)
  cellInput.send_keys(“第2行3列第输入框被找到!”)
  time . sleep (3)
  除了例外e:
  print (traceback.print_exc ())
  
  def拆卸(自我):
  self.driver.quit ()
  
  if __name__==癬_main__”:
  unittest.main()  

封装操作表格的公用类(webdriver)