在cypress测试框架中,我想等到下拉列表由基于其他字段值的API数据填充后,再从填充的选项中选择一个随机选项。我尝试了几种无法按预期方式工作的方法,唯一可行的方法是当我填充的选项具有固定长度时,以下代码可以工作,但是我无法确保此长度,因为根据输入的内容,这些选项可以是任意数量的项目在另一个字段中。
cy.get('#relatedTopics')
.find('option').should('be.length', 2)
.then($elm => $elm.get(1).setAttribute('selected', "selected"))
.parent()
.trigger('change')
答案 0 :(得分:0)
一种方法是添加总共有多少个项目的信息来分隔html元素,然后等待正确数量的项目出现。
其他方法是存储填充数据的信息,此测试可以某种方式访问该信息,然后再次使用该信息来等待正确数量的项。
还有更多的方法可以做到这一点,但无法确定哪种方法对您的情况特别有用。我可能不会生成如此随机的测试数据,以至于将成为一个问题,或者至少我会一直记录着所有生成的数据。