selenium formatter修改(导出到webdriver支持的java)

时间:2013-03-01 21:28:44

标签: java selenium webdriver formatter

我在理解格式化程序如何为Selenium IDE工作时遇到了一些麻烦。我不想从头开始编写格式化程序,我想修改现有代码,将selenese转换为webdriver支持的java。通常我会坐下来使用Javascript代码并尝试弄清楚它是如何工作的,但我有点卡住了。

这是一个典型的格式化程序:

function parse(testcase, source){}
function format(testcase,name){
    var Javaprogram = ""
    for each command in testcase{
        switch command.command
        case something:
            Javaprogram += "driver.something(" + command.target + (command.value!=""?");":","+command.value+");")
        ...

我无法在Java格式化程序的任何地方找到这种逻辑,甚至没有格式化函数,只是“formatComment”和“formatSuite”。这让我相信这是在幕后完成的,但逆向工程需要时间,我真的没有。

有谁知道这是如何工作的?有没有人有关于修改现有格式化程序的教程的链接?要么没事。如果我找到它们,我会继续寻找答案并将它们链接在评论中。显然,人们已经并且有能力做到这一点。

2 个答案:

答案 0 :(得分:1)

答案 1 :(得分:0)

  1. 打开Selenium-IDE源代码,您可以通过下载来完成此操作 它来自GitHub或Windows资源管理器转到: (C:\ Users \ YOUR_USER_NAME \ AppData \ Roaming \ Mozilla \ Firefox \ Profiles \ FIREFOX_PROFILE \ extensions)
  2. 将Selenium-IDE扩展程序 {a6fd85ed-e919-4a43-a5af-8da18bda539f} .xpi 复制到桌面
  3. 将文件重命名为 的 {a6fd85ed-e919-4a43-a5af-8da18bda539f} .xpi.zip
  4. 解压缩Zip文件
  5. 转到 ZIP \ chrome \ content \ formats \
  6. 打开 webdriver.js
  7. 搜索功能格式命令(命令),您将找到它 line~425
  8. 现在这个函数负责调用Selenium-IDE的Formatter Extension,这个函数以命令作为输入,并返回 string 作为输出,这是相应的行目标编程语言。

    如果你编辑这个函数,这将自定义所有编程语言的Formatter,如果你想自定义特定的编程语言,你必须编辑扩展源代码:

    1. 转到(C:\ Users \ YOUR_USER_NAME \ AppData \ Roaming \ Mozilla \ Firefox \ Profiles \ FIREFOX_PROFILE \ extensions)
    2. 找到目标格式化程序 X-formatters@seleniumhq.org.xpi 将其复制到桌面,解压缩并转到 chrome \ content \ formats \ ,您可以在其中找到格式化程序的js文件。
    3. 要应用您的修改: