当前,我正在使用reactjs Web应用程序,并且该应用程序在整个应用程序中都有许多下拉菜单,正常的下拉菜单(选择)方法不起作用,因为选择的选项是从react下拉菜单组件动态加载的,但目前我试图通过这样的击键来进行梳理:
@browser.text_field(name: "countries").set("Germany");sleep1
@browser.text_field(name: "countries").send_keys :enter
我正在写文本字段,并等待直到出现预期的文本,然后使用按键。
下面是HTML,我知道它在任何程度上都无济于事:
<div class="Select-input" style="display: inline-block;"><input name="countries" data-test-id="countries" autocomplete="0" aria-activedescendant="react-select-7--value" aria-expanded="false" aria-haspopup="false" aria-owns="" role="combobox" value="" style="box-sizing: content-box; width: 5px;"><div style="position: absolute; top: 0px; left: 0px; visibility: hidden; height: 0px; overflow: scroll; white-space: pre; font-size: 16px; font-family: "Open Sans", sans-serif; font-weight: 400; font-style: normal; letter-spacing: normal; text-transform: none;"></div></div>
但是,我认为这不是最佳解决方案,任何建议或解决方案都将非常有帮助。
答案 0 :(得分:0)
您需要在该选项(而不是文本字段)上传递Enter键。可能是这样的。
@browser.text_field(name: "countries").set("Germany");sleep1
@browser.element(text: "Germany").send_keys :enter
您无需传递Enter键来更具体,您可以触发点击。
@browser.text_field(name: "countries").set("Germany");sleep1
@browser.element(text: "Germany").click