appcrawler执行配置文件报错

执行命令:
C:\Users\Lenovo>java -jar E:\programsoftware\appcrawler\appcrawler.jar -c demo.yml
环境说明:
appcrawler 2.4.0
java version “15.0.1”

demo.yml:默认生成的模板

日志:
C:\Users\Lenovo>java -jar E:\programsoftware\appcrawler\appcrawler.jar -c demo.yml
2020-12-18 15:39:46 INFO [AppCrawler$.86.main]

AppCrawler 2.4.0 [霍格沃兹测试学院特别纪念版]
Appium 1.8.1 Java8 tested
app爬虫, 用于自动遍历测试. 支持Android和iOS, 支持真机和模拟器
项目地址: https://github.com/seveniruby/AppCrawler
移动测试技术交流: https://testerhome.com
联络作者: seveniruby@testerhome.com (思寒)
致谢: 晓光 泉龙 杨榕 恒温 mikezhou yaming116 沐木


2020-12-18 15:39:46 INFO [AppCrawler$.203.parseParams] Find Conf C:\Users\Lenovo\demo.yml
2020-12-18 15:39:47 INFO [AppCrawler$.226.parseParams] use appium in the config file http://127.0.0.1:4723/wd/hub
2020-12-18 15:39:47 INFO [AppCrawler$.230.parseParams] appium address = Some(http://127.0.0.1:4723/wd/hub)
2020-12-18 15:39:47 INFO [AppCrawler$.238.parseParams] use conf in config file
2020-12-18 15:39:47 INFO [AppCrawler$.242.parseParams] result directory = 20201218153140
2020-12-18 15:39:47 INFO [Crawler.130.start] set xpath attribute with List(name, label, value, resource-id, content-desc, instance, text)
2020-12-18 15:39:47 INFO [Crawler.135.start] set xpath
2020-12-18 15:39:47 INFO [Crawler.89.$anonfun$loadPlugins$2] com.testerhome.appcrawler.plugin.TagLimitPlugin@7bcecef6
2020-12-18 15:39:47 INFO [Crawler.89.$anonfun$loadPlugins$2] com.testerhome.appcrawler.plugin.ReportPlugin@46046c06
2020-12-18 15:39:47 INFO [Crawler.89.$anonfun$loadPlugins$2] com.testerhome.appcrawler.plugin.FreeMind@93824eb
2020-12-18 15:39:47 INFO [TagLimitPlugin.19.init] com.testerhome.appcrawler.plugin.TagLimitPlugin init
2020-12-18 15:39:47 INFO [ReportPlugin.19.init] com.testerhome.appcrawler.plugin.ReportPlugin init
2020-12-18 15:39:47 INFO [FreeMind.19.init] com.testerhome.appcrawler.plugin.FreeMind init
2020-12-18 15:39:47 INFO [ReportPlugin.21.start] reportPath=C:\Users\Lenovo\20201218153140
2020-12-18 15:39:47 INFO [Crawler.138.start] prepare setup Appium
2020-12-18 15:39:47 INFO [Crawler.250.setupAppium] afterPageMax=2
2020-12-18 15:39:48 INFO [Crawler.273.setupAppium] use AppiumClient
2020-12-18 15:39:48 INFO [Crawler.274.setupAppium] Map(appActivity → .view.WelcomeActivityAlias, appium → http://127.0.0.1:4723/wd/hub, noReset → true, appPackage → com.xueqiu.android, fullReset → false)
12月 18, 2020 3:39:57 下午 io.appium.java_client.remote.AppiumCommandExecutor$1 lambda$0
信息: Detected dialect: W3C
2020-12-18 15:39:57 INFO [AppiumClient.120.getDeviceInfo] screenWidth=1440 screenHeight=2428
2020-12-18 15:39:57 INFO [AppiumClient.112.appium] capture dir = C:\Users\Lenovo.
2020-12-18 15:39:57 INFO [Crawler.278.setupAppium] com.testerhome.appcrawler.driver.AppiumClient@4597e6e3
2020-12-18 15:39:57 INFO [Crawler.145.start] platformName= driver=com.testerhome.appcrawler.driver.AppiumClient@4597e6e3
2020-12-18 15:39:57 INFO [Crawler.146.start]

AppCrawler 2.4.0 [霍格沃兹测试学院特别纪念版]
Appium 1.8.1 Java8 tested
app爬虫, 用于自动遍历测试. 支持Android和iOS, 支持真机和模拟器
项目地址: https://github.com/seveniruby/AppCrawler
移动测试技术交流: https://testerhome.com
联络作者: seveniruby@testerhome.com (思寒)
致谢: 晓光 泉龙 杨榕 恒温 mikezhou yaming116 沐木


2020-12-18 15:39:57 INFO [Crawler.147.start] waiting for app load
2020-12-18 15:40:03 INFO [Crawler.149.start] driver=null
2020-12-18 15:40:03 INFO [Crawler.150.start] get screen info
2020-12-18 15:40:03 INFO [AppiumClient.120.getDeviceInfo] screenWidth=1440 screenHeight=2428
2020-12-18 15:40:03 INFO [Crawler.627.refreshPage] refresh page
2020-12-18 15:40:03 INFO [AppiumClient.102.getPageSourceWithRetry] start to get page source from appium
2020-12-18 15:40:05 INFO [AppiumClient.117.$anonfun$getPageSourceWithRetry$1] xml format
Exception in thread “main” java.lang.NoSuchMethodError: ‘void com.sun.org.apache.xml.internal.serialize.OutputFormat.(org.w3c.dom.Document)’
at com.testerhome.appcrawler.XPathUtil$.toPrettyXML(XPathUtil.scala:35)
at com.testerhome.appcrawler.driver.ReactWebDriver.$anonfun$getPageSourceWithRetry$1(ReactWebDriver.scala:132)
at scala.collection.immutable.Range.foreach$mVc$sp(Range.scala:156)
at com.testerhome.appcrawler.driver.ReactWebDriver.getPageSourceWithRetry(ReactWebDriver.scala:106)
at com.testerhome.appcrawler.driver.ReactWebDriver.getPageSourceWithRetry$(ReactWebDriver.scala:99)
at com.testerhome.appcrawler.driver.AppiumClient.getPageSourceWithRetry(AppiumClient.scala:28)
at com.testerhome.appcrawler.Crawler.refreshPage(Crawler.scala:628)
at com.testerhome.appcrawler.Crawler.start(Crawler.scala:152)
at com.testerhome.appcrawler.AppCrawler$.startCrawl(AppCrawler.scala:322)
at com.testerhome.appcrawler.AppCrawler$.parseParams(AppCrawler.scala:290)
at com.testerhome.appcrawler.AppCrawler$.main(AppCrawler.scala:91)
at com.testerhome.appcrawler.AppCrawler.main(AppCrawler.scala)

找到解决方法了吗,我也遇到了 :joy:

我也遇到了这个问题,有解决方法吗?

思寒大佬,appcrawler 支持 web 版自动遍历测试的版本发布了吗? 坐等 @seveniruby

记一个不同的问题:
java -jar appcrawler-2.4.0-jar-with-dependencies.jar -c demo.yml 使用指定文件定义测试范围和路径-例子【demo.yml要先使用正确的编码格式,如含有中文则应使用demo.ymlutf-8编码】

还没,拖了一年了,公司的事情太多了,一直没顾上整理最新版本的源代码。。。

可能跟java的版本有关系,java的新版本的xml解析库不一样了。你可以先临时切换到java10以下的版本。