V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
FreeWong
V2EX  ›  程序员

==web 页面的自动化测试方法选择=

  •  
  •   FreeWong · 2023-10-31 10:51:51 +08:00 · 2671 次点击
    这是一个创建于 418 天前的主题,其中的信息可能已经有所发展或是发生改变。
    现在要求开发一个对公司即将发布的 web 页面进行自动化测试的工具
    要求是,可以启动浏览器,自动实现单选、复选、填写文本输入框的内容,以及自动提交

    我在这方面没有类似的开发经验,请问各位大佬,这种需求是使用
    puppeteer 好
    还是使用 webview2 注入自己写的脚本好呢

    请从开发复杂度、实现难易程序谈方面谈下(本人有 javascript 以及 nodejs 的开发经验)

    感激诸位大佬指教
    20 条回复    2023-11-01 18:36:56 +08:00
    jwj
        1
    jwj  
       2023-10-31 11:39:47 +08:00
    浏览器扩展
    Al0rid4l
        2
    Al0rid4l  
       2023-10-31 11:42:54 +08:00
    puppeteer playwright
    Jessec
        3
    Jessec  
       2023-10-31 11:49:46 +08:00
    cypress
    Laimf
        4
    Laimf  
       2023-10-31 11:50:43 +08:00
    selenium
    czgaotian
        5
    czgaotian  
       2023-10-31 11:51:27 +08:00
    cypress 这个好用
    musi
        6
    musi  
       2023-10-31 11:53:59 +08:00
    playwright
    22092
        7
    22092  
       2023-10-31 11:54:16 +08:00
    Playwright 支持 webview2 如果这个自动化测试是在 win10+, 可以试试
    但开发复杂度、实现难易程序 , 应该还是 ChromeDriver/FirefoxDriver/WebkitDriver 更好
    而且后续考虑多分页多用户、预安装浏览器扩展、容器化…还是要用回 Driver
    FreeWong
        8
    FreeWong  
    OP
       2023-10-31 13:05:30 +08:00
    感谢各位大佬,浏览器扩展要手动先启动浏览器,这个方案估计不行。
    hanssx
        9
    hanssx  
       2023-10-31 13:59:18 +08:00
    @22092 playwright 也能容器化呀,为啥说要用回 Driver ?
    zuiyue123
        10
    zuiyue123  
       2023-10-31 14:08:07 +08:00
    selenium 非常好用,目前比较流行的,很成熟,支持多语言和多内核浏览器,
    我基于 selenium 实现过非常完整的自动化系统,公司内部常年用的
    huazhuangnan
        11
    huazhuangnan  
       2023-10-31 15:29:04 +08:00
    Playwright 很好用的
    nzbstn
        12
    nzbstn  
       2023-10-31 16:02:32 +08:00
    题主提到的那俩我还真没接触过, 不过我自己玩的时候基于 python 用过 selenium 和 playwright, 相比之下感觉 sele 更接近底层, 而 play 感觉是那种集成好了拿过来直接调用就可以, 相比 sele 更快捷吧,
    如果是要快速大量实现的话, 我更偏向 play, 如果是更原生一点的话, 那就 selenium(我之前的老东家做自动化测试用的就是 selenium)
    runinhard
        13
    runinhard  
       2023-10-31 16:42:33 +08:00
    nodejs + taiko
    这应该是最简单的了
    pikay
        14
    pikay  
       2023-10-31 19:44:56 +08:00
    playwright ,已经有类似的尝试,很容易就能入,有生成流程辅助工具。
    jiangzm
        15
    jiangzm  
       2023-10-31 22:27:43 +08:00
    提供一个新的方案 cucumber, 可以和上面提到的工具( puppeteer playwright selenium )结合到一起
    moxiaonai
        16
    moxiaonai  
       2023-11-01 00:16:01 +08:00 via Android
    cypress 或者 Playwright
    FreeWong
        17
    FreeWong  
    OP
       2023-11-01 08:51:02 +08:00
    @jwj @Al0rid4l @Jessec @Laimf @czgaotian @musi @22092 @hanssx @zuiyue123 @huazhuangnan @nzbstn @runinhard @pikay @jiangzm @moxiaonai 感谢各位的建议,每种建议对我来说都很重要 感谢感谢
    ytbfjhh
        18
    ytbfjhh  
       2023-11-01 10:05:27 +08:00
    selenium 资料最多,Playwright 新出的比 selenium 要好用,当然如果你不想写代码,可用影刀
    22092
        19
    22092  
       2023-11-01 15:40:36 +08:00
    @hanssx 这个 driver 包括 playwright driver , 对比的是 playwright+webview2 应该不可以容器化
    nzbstn
        20
    nzbstn  
       2023-11-01 18:36:56 +08:00
    @ytbfjhh 影刀兼容不好吧, 前几天我也是想用影刀融合 python 代码, 结果发现经常报错, 简单研究之后发现影刀自带的是 py37_32 位, 大多数脚本编写都是 64 位吧, 感觉某些方面还不如直接写代码来的更快一点
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   839 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 21:09 · PVG 05:09 · LAX 13:09 · JFK 16:09
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.