Ruby 此文本框适用于WATIR Webdriver,但不适用于WATIR classic

Ruby 此文本框适用于WATIR Webdriver,但不适用于WATIR classic,ruby,watir,watir-webdriver,watir-classic,Ruby,Watir,Watir Webdriver,Watir Classic,当我在watir webdriver的b.text_字段(:name,'namedDriverGivenName')中编写以下代码时,上述文本框起作用。设置'raj',但相同的代码在watir classic中不起作用,有人能告诉我可能有什么问题吗 编辑 放置b.text_字段(:id,'mainContactPolicyholder')。是否存在?=>真的 放置b.text_字段(:id,'emailReEnterPolicyholder')。是否存在?=>假的 上面两个文本框存在于我的页

当我在watir webdriver的b.text_字段(:name,'namedDriverGivenName')中编写以下代码时,上述文本框起作用。设置'raj',但相同的代码在watir classic中不起作用,有人能告诉我可能有什么问题吗

编辑


放置b.text_字段(:id,'mainContactPolicyholder')。是否存在?=>真的

放置b.text_字段(:id,'emailReEnterPolicyholder')。是否存在?=>假的


上面两个文本框存在于我的页面中,但第一个框给出的结果为真,第二个框给出的结果为假,但当我使用Watir Webdriver时,它正确识别两个文本框,为什么会这样

快速答案是不要使用Watir classic。我们将很快更新文档,以表明其作为不推荐项目的状态。专注于让您的测试与Watir webdriver配合使用。

webdriver缺少Watir classic的一些重要功能。但是watir webdriver没有像watir classic那样的附加功能,watir::Browser.attach(:index,0)。您好,我已经更新了这个问题,您现在可以回答我的问题吗?我的回答完全符合您的问题。我们不再支持Watir classic;更新到最新的技术,正如您所指出的,它实际上可以工作。:)“Webdriver缺少一些watir classic具有的重要功能。”您能提供一些示例吗?watir webdriver允许通过.titusfortner:thx“附加”信息。我模模糊糊地记得那个行为,但我一直都是瓦蒂尔的网络司机。我同意你的观点:“专注于让你的测试与Watir webdriver一起工作。”你能更具体地告诉我什么是不在Watir Classic中工作吗?有例外吗?当我尝试一个只有HTML的页面时,它被成功输入。我更新了我的代码,你现在能检查一下吗?一个文本框被代码识别,另一个甚至不被代码识别,但当我使用watir webdriver时,它会正确识别两个文本框并输入值,为什么会这样?听起来你使用的是watir Classic的旧版本。使用
input
类型为“email”的元素在v4.1.0中得到了修复。我使用的是watir classic 3.7.0,我没有升级,因为在这个速度之后的版本非常慢。我升级到watir classic 4.1.0版,但它抛出了这个错误“错误:IDITHarnessTest:SystemStackError:stack level太深”你能指导我如何克服这个问题吗?我使用的是watir 4.0.2
<input name="namedDriverGivenName" class="form-control ng-invalid ng-invalid-required ng-dirty" id="namedDriverGivenName" required="required" type="text" placeholder="Required" data-ng-model="namedDriver.FirstName" data-ng-required="true">
 <input name="mainContactPolicyholder" class="form-control ng-pristine ng-valid ng-valid-required" id="mainContactPolicyholder" required="required" type="text" maxlength="8" placeholder="Required" data-ng-model="phContact.PrimaryPhoneNumber" data-ng-required="true" minlength="8" data-da-hk-mobile-no="">


 <input name="emailReEnterPolicyholder" class="form-control ng-isolate-scope ng-invalid ng-invalid-required ng-valid-email ng-dirty ng-valid-da-confirm-input" id="emailReEnterPolicyholder" required="required" type="email" placeholder="Required" data-ng-model="phContact.PrimaryEmailAddressReenter" data-ng-required="true" data-prevent-cut-copy-paste-input="" data-da-confirm-input-field-to-compare="phContact.PrimaryEmailAddress" data-da-confirm-input="">