• 请不要在回答技术问题时复制粘贴 AI 生成的内容
caizixian
V2EX  ›  程序员

网站交互自动化测试工具?

  •  
  •   caizixian ·
    caizixian · Feb 28, 2015 · 4263 views
    This topic created in 4118 days ago, the information mentioned may be changed or developed.
    主要是要模拟填充表单,点击按钮等。之前看过casperjs,感觉不是特别适合。
    我的需求主要是这样子的:

    textarea[@class="***"].fill(str)
    textarea[@class="..."].fill(str)
    a[@class="btn"].click()
    input[@type="submit"].click()

    casperjs只能一个个填表单的字段,没法模拟用户的真实操作(如有不对,请指正)。
    不知道有没有这样的网站交互自动化测试工具?浏览器插件 or CLI工具都可。
    17 replies    2015-02-28 13:36:39 +08:00
    zjgsamuel
        1
    zjgsamuel  
       Feb 28, 2015   ❤️ 1
    caizixian
        2
    caizixian  
    OP
       Feb 28, 2015
    @zjgsamuel 要Java,好肥。而且同时只能操作一个,不能并行测试,时间消耗略大,不太合适。
    不过做某些自动化脚本还是很不错的。
    谢谢。
    kanchi240
        3
    kanchi240  
       Feb 28, 2015
    selenium可以满足你的需求
    caizixian
        5
    caizixian  
    OP
       Feb 28, 2015
    @ijse
    @kanchi240 感谢
    z7039585
        6
    z7039585  
       Feb 28, 2015
    selenium webdriver
    caizixian
        7
    caizixian  
    OP
       Feb 28, 2015
    @z7039585
    @kanchi240
    @ijse 为什么都是Java写的,不想弄jre啊
    z7039585
        8
    z7039585  
       Feb 28, 2015   ❤️ 1
    https://github.com/kagamimoe/webdriver_guide
    不一定用JAVA呀 selenium webdriver2.0 支持一大堆语言 我用python写的脚本
    caizixian
        9
    caizixian  
    OP
       Feb 28, 2015
    @z7039585 我的意思是你得在本地用Java跑selenium的server,再用Python client去连接.

    那个Guide很不错
    iehp
        10
    iehp  
       Feb 28, 2015
    webdriver的话不用跑java的server的啊。selenium rc 才需要起server。

    @caizixian
    caizixian
        11
    caizixian  
    OP
       Feb 28, 2015
    @iehp
    @z7039585 没错,是我搞错了
    ijse
        12
    ijse  
       Feb 28, 2015
    @caizixian 这个更轻量一些,也许也能满足需求:

    http://nightwatchjs.org/
    mikuazusa
        13
    mikuazusa  
       Feb 28, 2015
    浏览器插件实现的话,推荐下iMacros : http://imacros.net/
    jiehuangwei
        14
    jiehuangwei  
       Feb 28, 2015
    @caizixian casperjs只能一个个填表单的字段? 这个不明白,casperjs应该是能满足你你的需求的,直接模拟的是浏览器,完全真实
    caizixian
        15
    caizixian  
    OP
       Feb 28, 2015
    @ijse It runs against a selenium server.

    @jiehuangwei
    casperjs大致是这样的this.fill('form[action="/search"]', { q: 'phantomjs' }, true);
    并没有模仿keystroke,而网站上则是有JS检测的
    jiehuangwei
        16
    jiehuangwei  
       Feb 28, 2015
    @caizixian 如果需要,一样是可以的
    luw2007
        17
    luw2007  
       Feb 28, 2015
    splinter 基于selenium, 写法简单.
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5674 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 47ms · UTC 06:40 · PVG 14:40 · LAX 23:40 · JFK 02:40
    ♥ Do have faith in what you're doing.