webdriver-io – 如何使用WebdriverIO从输入类型=“日期”清除日期

我现在正在使用WebdriverIO并开发一个Web应用程序.

这些天我试图从输入类型=“日期”设置日期,我有错误

invalid element state: Element must be user-editable in order to clear
it.

并发现
我可以通过使用addValue()来消除错误,但任何API都不会清除该值.

client.clearElement('#deadline')

也得到

invalid element state: Element must be user-editable in order to clear
it.

如何从表单中删除值?

最佳答案 您可以在浏览器脚本中运行以清除它

browser.execute(function () {
 document.querySelector('#deadline').value = '';
}, null);

或者给它一些价值

var date = '2020-03-28';
browser.execute(function (date) {
 document.querySelector('#deadline').value = date';
}, date);

参考:https://github.com/webdriverio/webdriverio/issues/386

更优雅的方法是创建一个自定义命令并将这段代码放入其中

点赞