zoukankan      html  css  js  c++  java
  • Cypress-自动化测试-获取元素过程中遇到的问题及解决方法

    1、input标签类型为number在chrome浏览器中无法写入元素的值

    <input type=number,id='hr'.......>向这个元素中写入数据的时候,使用cy.get('#hr').type()的方式,在chrome浏览器下写入失败,使用electron浏览器运行可以运行成功,发现是chrome浏览器的bug。

    解决方法:使用setAttruibute方法,改变元素的类型,再写入数据。

    具体方法:cy.get('#hr').then((e1)=>{

      el.setAttriubute('type','text')

    }).type('值')

    2、input标签属性为readonly时写入数据

    <input type=text,id='hr',readonly.......>向这个元素中写入数据的时候,可以先删除元素readonly再写入

    解决方法:使用removeAttr()方法,改变元素的类型,再写入数据。

    具体方法:cy.get('#hr').then((e1)=>{el.removeAttr('readonly')}).type('值')

    3、界面元素遮挡的情况下如何写入数据

    有时候,我们在界面中输入数据时,例如下拉框正好挡住了要写的输入框,cypress可能就无法找到元素,使用强制输入的方法{force:true}.

    cy.get('#hr').type('值',{force:true}.)

    此方法在点击时也可以使用,click({force:true}).

  • 相关阅读:
    项目计划进度控制与资源管理
    读大道至简所思
    Java自学第三十二天
    Java自学第三十一天
    Java自学第三十天
    Java自学第二十九天
    Java自学第二十八天
    Java自学第二十七天
    Java自学第二十六天
    Java自学第二十五天
  • 原文地址:https://www.cnblogs.com/memebuguoshixingfu/p/11941770.html
Copyright © 2011-2022 走看看