• Testng+java+chromedriver


    chromedriver的版本一定要与Chrome的版本一致,不然就不起作用。

    查看电脑安装的谷歌浏览器版本
    在浏览器中输入chrome://version/

    建议关闭谷歌自动更新,防止后续版本不对应,具体参考

    https://jingyan.baidu.com/article/b87fe19e8876e91318356893.html

    下载对应版本chromedriver

    1、http://chromedriver.storage.googleapis.com/index.html

    进入文件夹后,如是win32/64系统则选择如下

    解压压缩包,找到chromedriver.exe复制到chrome的安装目录(我的在默认安装路径下C:Program Files (x86)GoogleChromeApplication )

    复制chromedriver.exe文件的路径并加入到电脑的环境变量中去。

    操作步骤:我的电脑-右击-属性-高级系统设置-环境变量-Path-编辑-输入chromedriver所在位置 如 C:Program Files (x86)GoogleChromeApplication-点击确定按钮
    1、attempted duplicate class definition for name
    问题代码就出在:ctClass.toClass(); 这行代码上,从问题描述上来看,是重复加载了同一个类导致的。强烈建议参考 使用javassist运行时动态修改字节码对象。

    javassist调用了 ClassLoader 的 defineClass 方法实现的类加载,调用java.lang.ClassLoader#defineClass(java.lang.String, byte[], int, int, java.security.ProtectionDomain)方法要确保一个类只会被同一个ClassLoader加载一次,否则就会报错:

    javassist.CannotCompileException: by java.lang.ClassFormatError: loader (instance of sun/misc/Launcher$AppClassLoader): attempted duplicate class definition for name: “com/ymqx/动态增加属性和注解/Person”
    at javassist.util.proxy.DefineClassHelper.toClass(DefineClassHelper.java:271)
    at javassist.ClassPool.toClass(ClassPool.java:1240)
    at javassist.ClassPool.toClass(ClassPool.java:1098)
    at javassist.ClassPool.toClass(ClassPool.java:1056)
    at javassist.CtClass.toClass(CtClass.java:1298)
    2、class redefinition failed: attempted to change the schema (add/remove fields)

    文章转自:Testng+java+chromedriver_Java-答学网

    作者:答学网,转载请注明原文链接:http://www.dxzl8.com/

  • 相关阅读:
    征途服务端安装
    Docker学习第一天
    wget参数使用说明
    第五章 Docker 自定义镜像
    秋招知识点总结-FPGA基础知识
    Linux nm命令
    【MySQL高级】MySQL的事务
    web基础和http协议
    HTML 学习笔记(五)超链接
    使用ffmpeg提取视频中的音频并保存为单声道wav
  • 原文地址:https://blog.csdn.net/zl5186888/article/details/126865811