1.出现element not interactable,发现这个元素在页面上不可见,需要拖动下拉框才能看到这个元素 2.这个时候需要让元素在页面上可见,才可操作…
这两天要在阿里云日志中操作UI,以输入关键字搜索日志. 在send_keys时报错element not interactable. iframe 第一个问题是iframe,通过切换iframe解决: driver.switch_to.frame(0) # 索引从0开始 span 第二个问题是span. F12查看html长这样: ①find_element(pre).click 有效,说明iframe切换成功了 ②find_element(span2).send_keys报错 element…
python+selenium 元素被定位到而且click()也提示执行成功,但是页面就是没有变化和跳转. 如果多次定位和click(),有时候会跳转. 我遇到很多次就是很郁闷,有人说,操作太快的,页面的元素还没加载出来, 我觉得这是不存在的的,因为我用了隐式等待,driver.implicitly_wait(10). 最后我我发现,在定位元素之前加上sleep(1),这个问题就完美的被解决了. 问题基本定位到了. 原因是, WebElement.click() 之后,没有留足够的时间,就把页面…
(1)       控制浏览器 ①控制浏览器窗口大小set_window_size(宽,高) 打开浏览器全屏maximize_window() ②控制浏览器后退back().前进forward() ③模拟浏览器刷新refresh() (2)       简单元素操作 ①清除文本clear() ②模拟按键输入send_keys(*value) ③单击元素click() ④提交表单submit() ⑤返回元素的尺寸size ⑥获取元素的文本text ⑦获得属性值get_attribute(“name…
使用js制作效果时,我们常常要获取某个元素在页面上的偏移量(例如tip提示框功能).而获取偏移量可以直接获取相对于document的偏移量,也可以获取相对与视口的偏移量(viewpoint)加上页面滚动量(scroll)获得. 1.获取相对与document的偏移量 function getOffsetSum(ele){ var top= 0,left=0; while(ele){ top+=ele.offsetTop; left+=ele.offsetLeft; ele=ele.offsetP…
一.鼠标悬停 1.在web网站中,有一些页面元素只需要我们将鼠标指针放在上面就会出现被隐藏的下拉框或者其它元素,在自动化的过程中我们使用Actions类对鼠标进行悬停操作. 2.案例演示 package actionsclass; import java.util.concurrent.TimeUnit; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.juni…
我们在进行web自动化测试的时候进行XPath或者CSS定位,需要检测页面元素定位是否正确,如果用脚本去检测,那么效率是极低的. 一般网上推选装额外的插件来实现页面元素定位检测 如:firebug. 其实F12开发者工具就能直接在页面上检测元素定位不需要装额外的插件. 有2种方式: F12开发者自带的elements定位,支持xpath css定位. JS方法定位,通过console输入,支持id.Name.ClassName.TagName定位,CSS不支持xpath方式定位. element…
定义和用法 padding-top 属性设置元素的上内边距(空间). 说明 该属性设置元素上内边距的宽度.行内非替换元素上设置的上内边距不会影响行高计算,因此,如果一个元素既有内边距又有背景,从视觉上看可能延伸到其他行,有可能还会与其他内容重叠.不允许指定负内边距值. 注释:不允许使用负值. 默认值: 0 继承性: no 版本: CSS1 JavaScript 语法: object.style.paddingTop="10px" 可能的值 值 描述 length 规定以具体单位计的固定…
getBoundingClientRect用于获得页面中某个元素的左,上,右和下分别相对浏览器视窗的位置. getBoundingClientRect是DOM元素到浏览器可视范围的距离(不包含文档卷起的部分). 该函数返回一个Object对象,该对象有6个属性:top,lef,right,bottom,width,height: 这里的top.left和css中的理解很相似,width.height是元素自身的宽高,但是right,bottom和css中的理解有点不一样.right是指元素右边界…
使用情景:因为我父页面上有用art.dialog,而子页面上有项目中的框架弹出方法跟art.dialog冲突,不能使用art.dialog自带的方法传值, 所以只好用一种简单粗暴的方法来设置. var dom = top.window.document.getElementById('父页面iframe的id').contentWindow.$('#父页面元素id') dom.attr("value", id);  //子窗口给父窗口元素赋值 情况比较特殊,仅供参考.…