首页 > 解决方案 > 使用 Gauge / Taiko 通过 removeAttribute('readonly') 自动化日期选择器

问题描述

如果这个问题已经被问过/回答过,我们深表歉意。

我热衷于通过删除字段上的只读属性并将日期直接传递给它来自动化日期选择器。

我知道这可以通过 Selenium、iMacros 和其他类似工具实现。例如这里

@Test  
public void CalendarTest()      
{  
   WebDriver driver= new FirefoxDriver();   
          
   // Creating JavascriptExecutor interface object Type casting  
   JavascriptExecutor js = (JavascriptExecutor)driver;  
          
   // Launching the Site.              driver.get("http://keenthemes.com/preview/metronic/theme/admin_1/components_date_time_pickers.html");   
          
  WebElement datePicker = driver.findElement(By.xpath("(//input[@class='form-control'])[11]"));          
          
  // Need to remove readonly HTML attribute  
  js.executeScript("document.getElementsByClassName('form-control')[11].removeAttribute('readonly');", datePicker);
          
  // Enter Date directly into the field
  driver.findElement(By.xpath("(//input[@class='form-control'])[11]")).sendKeys("03-05-2019");      
  }

但是,使用 JavaScript 在 Gauge/Taiko 中无法获得相同的结果。

我对 Taiko 比较陌生,因此非常感谢任何帮助。

标签: javascriptgetgauge

解决方案


以下似乎在我的情况下工作:

evaluate(textBox({name:"fieldName"}), (element) => element.setAttribute("value", "01-01-2020"))

推荐阅读