如何在Selenium中设置对象存储库?

如何在Selenium中设置对象存储库?,selenium,frameworks,automation,webdriver,selenium-webdriver,Selenium,Frameworks,Automation,Webdriver,Selenium Webdriver,我正在尝试在Selenium Webdriver中设置一个对象存储库,以确保将来对象中的更改不会影响我的脚本。从我的角度来看,这是一个不错的选择 就这么简单 有一个包含所有对象定位器的CSV CSV解析器,将所有值存储在多维数组中,列和行作为索引 在代码中需要使用定位器的任何位置使用该数组 如果您不想为数组使用硬编码的索引值,那么您需要一些增量机制 试试看{ while(loc_索引 try{ while(loc_index<=loc_type.size()-1){ /

我正在尝试在Selenium Webdriver中设置一个对象存储库,以确保将来对象中的更改不会影响我的脚本。

从我的角度来看,这是一个不错的选择

就这么简单

  • 有一个包含所有对象定位器的CSV
  • CSV解析器,将所有值存储在多维数组中,列和行作为索引
  • 在代码中需要使用定位器的任何位置使用该数组
  • 如果您不想为数组使用硬编码的索引值,那么您需要一些增量机制
  • 试试看{
    while(loc_索引
    
      try{
        while(loc_index<=loc_type.size()-1){
        //  System.out.println("1sy");
        while(loc_val_index<=loc_val.size()){
            while(obj_index<=obj_value.size()-1){   
              String loc_data = loc_type.get(loc_index);
              if(loc_data.equals("name")){           
         WebElement element = driver.findElement(By.name(loc_val.get(loc_val_index)));
        if (element!=null){
            try {
           element.sendKeys(obj_value.get(obj_index)); } catch (Exception e){}
           obj_index++;}}else if(loc_data.equals("xpath")){
          WebElement element = driver.findElement(By.xpath(loc_val.get(loc_val_index)));
          if (element!=null){                            
              element.sendKeys(obj_value.get(obj_index));  
               Log("Data Entered");
              obj_index++;}}
          else if(loc_data.equals("id")){ 
          try{
              WebElement element = driver.findElement(By.id(loc_val.get(loc_val_index))); 
              if (element!=null){
                 element.sendKeys(obj_value.get(obj_index));                                
                   obj_index++;}} catch (Exception e) {}}
                 break;}
            loc_val_index++;
            break;}
        loc_index++;
        }
            }catch (Exception e){}
            finally{
                obj_index=0;
                loc_index=0;
                loc_val_index=0;
            }