No.1

Q: 控制台中出现的 “RuntimeError, line:7,Error: Driver action request failed.” 是什么原因?

A: 一旦出现这种情况,意味着line7的代码执行失败,此时 Lemonce Editor 会停止运行。造成失败很可能是因为:

页面尚未加载完全(有时候页面虽然页面显示完全,但页面内元素并未加载完成)。

导致line7中使用动作语句如clickinputmove等找不到可操作的元素。此时可以在line7之前添加wait或者assert语句,来控制页面加载的情况。

lc2代码中的选择器(selector)在页面内无法定位到相应的元素。

造成这个问题有多种原因,可能是因为:

  • 用户手写了错误的选择器。

  • 页面内的选择器是动态生成的。录制脚本时使用 按钮定位的元素生成的选择器,在回放时已经发生了变化,此时需要其他方式来手写一个相对稳定的选择器,比如内容选择等等。


No.2

Q: Lemonce是否能打开多个浏览器窗口?

A: Lemonce内置浏览器窗口并非完整的浏览器,因此不具备tab切换的功能。如果一定要在tab间切换,可以使用jumpto语句做跳转,跳转到新页面和旧页面。另外Lemoncase语法中有 back(后退)forward(前进),可以用来做页面间的切换,相关语法使用请点击这里。


No.3


Q: Lemonce中是否有可用于一个测试套件中所有测试用例的全局变量

A: Lemonce并没有采用相关的设计,但是我们选用了更好的解决方式————关键词 import。 举个栗子。假设用户已经写好了一个用于存放变量的 globals.lc2 的文件如下。

var="Lemonce";// 定义一个全局变量var
link="https://www.baidu.com"; // 定义一个全局变量link
process main () {

}
process jumpToBaidu() {
    jumpto link;//link 此时为变量
}

用户可以按照如下的方式在新的lc2文件中使用global.lc2文件。

 import './global.lc2'; // 此处文件路径要选择正确
//主过程中可以使用在global.lc2文件中定义的所有内容

process main () {
   jumpto link; // link 是在global.lc2文件中定义的变量
   log var;// 输出 “Lemonce”
   jumpToBaidu();// 跳转到百度
 }

您也可以点击这里查看具体关于import的使用。