一.对CodeMirror进行操作
CodeMirror是一个嵌入在浏览器中的代码编辑器。要想对其操作,必须使用CodeMirror自己的方法。
通常我们在selenium或者robot framework框架中是可以使用自带的方法进行文本输入的,但是在某些web系统中嵌入了CodeMirror编辑器,那在写自动化脚本的时候要如何对CodeMirror进行操作呢?
本文以在robot framework测试框架下去输入文本做例子。
首先,点击要输入的地方,就是用自动化框架自带的方法定位到富文本编辑器。
click element css=pre[class=' CodeMirror-line ']
其次,定义CodeMirror中可编辑的部分为变量,注意querySelector中的元素一定要找正确,否则不是一个可操作的对象。这个编辑器比较难定位,定位时尽量找元素的顶层,有多个相同的locator时的索引也可能不同,不一定是第一个,都需要自己尝试找到。必须以.CodeMirror结尾,才能切换到CodeMirror编辑器。
Execute javascript _editor = document.querySelectorAll("div.CodeMirror.cm-s-default")[0].CodeMirror;
最后,找对了编辑器,就可以进行操作了,用CodeMirror自己封装的方法操作。以下2中方法都可以输入文本,二选一就可以了。
Execute javascript _editor.se