"C:\Program Files\Java\jdk1.8.0_181\bin\java.exe" -agentlib:jdwp=transport=dt_socket,address=127.0.0.1:65096,suspend=y,server=n -javaagent:C:\Users\v_shutingma\AppData\Local\JetBrains\IntelliJIdea2021.2\captureAgent\debugger-agent.jar -Dfile.encoding=UTF-8 -classpath "C:\Program Files\Java\jdk1.8.0_181\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\deploy.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\access-bridge-64.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\cldrdata.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\jaccess.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\jfxrt.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\localedata.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\nashorn.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\sunec.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\sunjce_provider.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\sunmscapi.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\sunpkcs11.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\ext\zipfs.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\javaws.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\jce.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\jfr.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\jfxswt.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\management-agent.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\plugin.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\resources.jar;C:\Program Files\Java\jdk1.8.0_181\jre\lib\rt.jar;H:\框架源码\AppCrawler\target\classes;C:\Users\v_shutingma\.m2\repository\org\scala-lang\scala-library\2.13.5\scala-library-2.13.5.jar;C:\Users\v_shutingma\.m2\repository\org\scala-lang\scala-reflect\2.13.5\scala-reflect-2.13.5.jar;C:\Users\v_shutingma\.m2\repository\org\scala-lang\scala-compiler\2.13.5\scala-compiler-2.13.5.jar;C:\Users\v_shutingma\.m2\repository\org\jline\jline\3.19.0\jline-3.19.0.jar;C:\Users\v_shutingma\.m2\repository\net\java\dev\jna\jna\5.3.1\jna-5.3.1.jar;C:\Users\v_shutingma\.m2\repository\org\scalatest\scalatest-maven-plugin\2.0.2\scalatest-maven-plugin-2.0.2.jar;C:\Users\v_shutingma\.m2\repository\org\apache\maven\maven-plugin-api\3.3.9\maven-plugin-api-3.3.9.jar;C:\Users\v_shutingma\.m2\repository\org\eclipse\sisu\org.eclipse.sisu.plexus\0.3.2\org.eclipse.sisu.plexus-0.3.2.jar;C:\Users\v_shutingma\.m2\repository\javax\enterprise\cdi-api\1.0\cdi-api-1.0.jar;C:\Users\v_shutingma\.m2\repository\javax\annotation\jsr250-api\1.0\jsr250-api-1.0.jar;C:\Users\v_shutingma\.m2\repository\org\eclipse\sisu\org.eclipse.sisu.inject\0.3.2\org.eclipse.sisu.inject-0.3.2.jar;C:\Users\v_shutingma\.m2\repository\org\apache\maven\maven-core\3.3.9\maven-core-3.3.9.jar;C:\Users\v_shutingma\.m2\repository\org\apache\maven\maven-settings\3.3.9\maven-settings-3.3.9.jar;C:\Users\v_shutingma\.m2\repository\org\apache\maven\maven-settings-builder\3.3.9\maven-settings-builder-3.3.9.jar;C:\Users\v_shutingma\.m2\repository\org\apache\maven\maven-builder-support\3.3.9\maven-builder-support-3.3.9.jar;C:\Users\v_shutingma\.m2\repository\org\apache\maven\maven-repository-metadata\3.3.9\maven-repository-metadata-3.3.9.jar;C:\Users\v_shutingma\.m2\repository\org\apache\maven\maven-model-builder\3.3.9\maven-model-builder-3.3.9.jar;C:\Users\v_shutingma\.m2\repository\org\apache\maven\maven-aether-provider\3.3.9\maven-aether-provider-3.3.9.jar;C:\Users\v_shutingma\.m2\repository\org\eclipse\aether\aether-spi\1.0.2.v20150114\aether-spi-1.0.2.v20150114.jar;C:\Users\v_shutingma\.m2\repository\org\eclipse\aether\aether-impl\1.0.2.v20150114\aether-impl-1.0.2.v20150114.jar;C:\Users\v_shutingma\.m2\repository\org\eclipse\aether\aether-api\1.0.2.v20150114\aether-api-1.0.2.v20150114.jar;C:\Users\v_shutingma\.m2\repository\org\eclipse\aether\aether-util\1.0.2.v20150114\aether-util-1.0.2.v20150114.jar;C:\Users\v_shutingma\.m2\repository\com\google\inject\guice\4.0\guice-4.0-no_aop.jar;C:\Users\v_shutingma\.m2\repository\javax\inject\javax.inject\1\javax.inject-1.jar;C:\Users\v_shutingma\.m2\repository\aopalliance\aopalliance\1.0\aopalliance-1.0.jar;C:\Users\v_shutingma\.m2\repository\org\codehaus\plexus\plexus-classworlds\2.5.2\plexus-classworlds-2.5.2.jar;C:\Users\v_shutingma\.m2\repository\org\codehaus\plexus\plexus-component-annotations\1.6\plexus-component-annotations-1.6.jar;C:\Users\v_shutingma\.m2\repository\org\sonatype\plexus\plexus-sec-dispatcher\1.3\plexus-sec-dispatcher-1.3.jar;C:\Users\v_shutingma\.m2\repository\org\sonatype\plexus\plexus-cipher\1.4\plexus-cipher-1.4.jar;C:\Users\v_shutingma\.m2\repository\org\apache\maven\reporting\maven-reporting-api\3.0\maven-reporting-api-3.0.jar;C:\Users\v_shutingma\.m2\repository\org\apache\maven\doxia\doxia-sink-api\1.0\doxia-sink-api-1.0.jar;C:\Users\v_shutingma\.m2\repository\io\appium\java-client\7.6.0\java-client-7.6.0.jar;C:\Users\v_shutingma\.m2\repository\org\seleniumhq\selenium\selenium-java\3.141.59\selenium-java-3.141.59.jar;C:\Users\v_shutingma\.m2\repository\org\seleniumhq\selenium\selenium-chrome-driver\3.141.59\selenium-chrome-driver-3.141.59.jar;C:\Users\v_shutingma\.m2\repository\org\seleniumhq\selenium\selenium-edge-driver\3.141.59\selenium-edge-driver-3.141.59.jar;C:\Users\v_shutingma\.m2\repository\org\seleniumhq\selenium\selenium-firefox-driver\3.141.59\selenium-firefox-driver-3.141.59.jar;C:\Users\v_shutingma\.m2\repository\org\seleniumhq\selenium\selenium-ie-driver\3.141.59\selenium-ie-driver-3.141.59.jar;C:\Users\v_shutingma\.m2\repository\org\seleniumhq\selenium\selenium-opera-driver\3.141.59\selenium-opera-driver-3.141.59.jar;C:\Users\v_shutingma\.m2\repository\org\seleniumhq\selenium\selenium-remote-driver\3.141.59\selenium-remote-driver-3.141.59.jar;C:\Users\v_shutingma\.m2\repository\org\seleniumhq\selenium\selenium-safari-driver\3.141.59\selenium-safari-driver-3.141.59.jar;C:\Users\v_shutingma\.m2\repository\org\apache\commons\commons-exec\1.3\commons-exec-1.3.jar;C:\Users\v_shutingma\.m2\repository\com\squareup\okhttp3\okhttp\3.11.0\okhttp-3.11.0.jar;C:\Users\v_shutingma\.m2\repository\com\squareup\okio\okio\1.14.0\okio-1.14.0.jar;C:\Users\v_shutingma\.m2\repository\org\seleniumhq\selenium\selenium-support\3.141.59\selenium-support-3.141.59.jar;C:\Users\v_shutingma\.m2\repository\org\seleniumhq\selenium\selenium-api\3.141.59\selenium-api-3.141.59.jar;C:\Users\v_shutingma\.m2\repository\com\google\code\gson\gson\2.8.8\gson-2.8.8.jar;C:\Users\v_shutingma\.m2\repository\org\apache\httpcomponents\httpclient\4.5.13\httpclient-4.5.13.jar;C:\Users\v_shutingma\.m2\repository\commons-logging\commons-logging\1.2\commons-logging-1.2.jar;C:\Users\v_shutingma\.m2\repository\cglib\cglib\3.3.0\cglib-3.3.0.jar;C:\Users\v_shutingma\.m2\repository\commons-validator\commons-validator\1.7\commons-validator-1.7.jar;C:\Users\v_shutingma\.m2\repository\commons-beanutils\commons-beanutils\1.9.4\commons-beanutils-1.9.4.jar;C:\Users\v_shutingma\.m2\repository\commons-digester\commons-digester\2.1\commons-digester-2.1.jar;C:\Users\v_shutingma\.m2\repository\commons-collections\commons-collections\3.2.2\commons-collections-3.2.2.jar;C:\Users\v_shutingma\.m2\repository\org\apache\commons\commons-lang3\3.12.0\commons-lang3-3.12.0.jar;C:\Users\v_shutingma\.m2\repository\commons-io\commons-io\2.11.0\commons-io-2.11.0.jar;C:\Users\v_shutingma\.m2\repository\org\springframework\spring-context\5.3.10\spring-context-5.3.10.jar;C:\Users\v_shutingma\.m2\repository\org\springframework\spring-aop\5.3.10\spring-aop-5.3.10.jar;C:\Users\v_shutingma\.m2\repository\org\springframework\spring-beans\5.3.10\spring-beans-5.3.10.jar;C:\Users\v_shutingma\.m2\repository\org\springframework\spring-core\5.3.10\spring-core-5.3.10.jar;C:\Users\v_shutingma\.m2\repository\org\springframework\spring-jcl\5.3.10\spring-jcl-5.3.10.jar;C:\Users\v_shutingma\.m2\repository\org\springframework\spring-expression\5.3.10\spring-expression-5.3.10.jar;C:\Users\v_shutingma\.m2\repository\org\aspectj\aspectjweaver\1.9.7\aspectjweaver-1.9.7.jar;C:\Users\v_shutingma\.m2\repository\org\apache\httpcomponents\httpcore\4.4.14\httpcore-4.4.14.jar;C:\Users\v_shutingma\.m2\repository\com\github\scopt\scopt_2.13\4.0.1\scopt_2.13-4.0.1.jar;C:\Users\v_shutingma\.m2\repository\com\brsanthu\google-analytics-java\2.0.0\google-analytics-java-2.0.0.jar;C:\Users\v_shutingma\.m2\repository\org\slf4j\jcl-over-slf4j\1.7.25\jcl-over-slf4j-1.7.25.jar;C:\Users\v_shutingma\.m2\repository\com\fasterxml\jackson\module\jackson-module-scala_2.13\2.13.0\jackson-module-scala_2.13-2.13.0.jar;C:\Users\v_shutingma\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.13.0\jackson-core-2.13.0.jar;C:\Users\v_shutingma\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.13.0\jackson-annotations-2.13.0.jar;C:\Users\v_shutingma\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.13.0\jackson-databind-2.13.0.jar;C:\Users\v_shutingma\.m2\repository\com\thoughtworks\paranamer\paranamer\2.8\paranamer-2.8.jar;C:\Users\v_shutingma\.m2\repository\com\fasterxml\jackson\dataformat\jackson-dataformat-yaml\2.13.0\jackson-dataformat-yaml-2.13.0.jar;C:\Users\v_shutingma\.m2\repository\com\fasterxml\jackson\dataformat\jackson-dataformat-xml\2.13.0\jackson-dataformat-xml-2.13.0.jar;C:\Users\v_shutingma\.m2\repository\org\codehaus\woodstox\stax2-api\4.2.1\stax2-api-4.2.1.jar;C:\Users\v_shutingma\.m2\repository\com\fasterxml\woodstox\woodstox-core\6.2.6\woodstox-core-6.2.6.jar;C:\Users\v_shutingma\.m2\repository\com\fasterxml\jackson\module\jackson-module-jaxb-annotations\2.13.0\jackson-module-jaxb-annotations-2.13.0.jar;C:\Users\v_shutingma\.m2\repository\jakarta\xml\bind\jakarta.xml.bind-api\2.3.3\jakarta.xml.bind-api-2.3.3.jar;C:\Users\v_shutingma\.m2\repository\jakarta\activation\jakarta.activation-api\1.2.1\jakarta.activation-api-1.2.1.jar;C:\Users\v_shutingma\.m2\repository\org\lucee\commons-codec\1.10.L001\commons-codec-1.10.L001.jar;C:\Users\v_shutingma\.m2\repository\commons-codec\commons-codec\1.10\commons-codec-1.10.jar;C:\Users\v_shutingma\.m2\repository\org\jsoup\jsoup\1.14.3\jsoup-1.14.3.jar;C:\Users\v_shutingma\.m2\repository\com\jayway\jsonpath\json-path\2.6.0\json-path-2.6.0.jar;C:\Users\v_shutingma\.m2\repository\net\minidev\json-smart\2.4.7\json-smart-2.4.7.jar;C:\Users\v_shutingma\.m2\repository\net\minidev\accessors-smart\2.4.7\accessors-smart-2.4.7.jar;C:\Users\v_shutingma\.m2\repository\org\scalactic\scalactic_2.13\3.0.8\scalactic_2.13-3.0.8.jar;C:\Users\v_shutingma\.m2\repository\org\scalatest\scalatest_2.13\3.0.8\scalatest_2.13-3.0.8.jar;C:\Users\v_shutingma\.m2\repository\org\scala-lang\modules\scala-xml_2.13\1.2.0\scala-xml_2.13-1.2.0.jar;C:\Users\v_shutingma\.m2\repository\org\apache\directory\studio\org.apache.commons.io\2.4\org.apache.commons.io-2.4.jar;C:\Users\v_shutingma\.m2\repository\org\apache\logging\log4j\log4j-core\2.15.0\log4j-core-2.15.0.jar;C:\Users\v_shutingma\.m2\repository\org\apache\logging\log4j\log4j-api\2.15.0\log4j-api-2.15.0.jar;C:\Users\v_shutingma\.m2\repository\org\slf4j\slf4j-api\1.7.32\slf4j-api-1.7.32.jar;C:\Users\v_shutingma\.m2\repository\org\slf4j\slf4j-simple\1.7.32\slf4j-simple-1.7.32.jar;C:\Users\v_shutingma\.m2\repository\org\javassist\javassist\3.28.0-GA\javassist-3.28.0-GA.jar;C:\Users\v_shutingma\.m2\repository\com\github\tototoshi\scala-csv_2.13\1.3.8\scala-csv_2.13-1.3.8.jar;C:\Users\v_shutingma\.m2\repository\us\codecraft\xsoup\0.3.2\xsoup-0.3.2.jar;C:\Users\v_shutingma\.m2\repository\org\assertj\assertj-core\3.9.1\assertj-core-3.9.1.jar;C:\Users\v_shutingma\.m2\repository\org\junit\jupiter\junit-jupiter-api\5.8.1\junit-jupiter-api-5.8.1.jar;C:\Users\v_shutingma\.m2\repository\org\opentest4j\opentest4j\1.2.0\opentest4j-1.2.0.jar;C:\Users\v_shutingma\.m2\repository\org\apiguardian\apiguardian-api\1.1.2\apiguardian-api-1.1.2.jar;C:\Users\v_shutingma\.m2\repository\org\junit\jupiter\junit-jupiter-params\5.8.1\junit-jupiter-params-5.8.1.jar;C:\Users\v_shutingma\.m2\repository\org\junit\jupiter\junit-jupiter-engine\5.8.1\junit-jupiter-engine-5.8.1.jar;C:\Users\v_shutingma\.m2\repository\com\github\poslegm\scala-phash_2.13\1.2.2\scala-phash_2.13-1.2.2.jar;C:\Users\v_shutingma\.m2\repository\com\jhlabs\filters\2.0.235-1\filters-2.0.235-1.jar;C:\Users\v_shutingma\.m2\repository\com\github\spullara\mustache\java\compiler\0.9.10\compiler-0.9.10.jar;C:\Users\v_shutingma\.m2\repository\org\ow2\asm\asm\9.2\asm-9.2.jar;C:\Users\v_shutingma\.m2\repository\io\qameta\allure\allure-junit5\2.15.0\allure-junit5-2.15.0.jar;C:\Users\v_shutingma\.m2\repository\io\qameta\allure\allure-junit-platform\2.15.0\allure-junit-platform-2.15.0.jar;C:\Users\v_shutingma\.m2\repository\io\qameta\allure\allure-java-commons\2.15.0\allure-java-commons-2.15.0.jar;C:\Users\v_shutingma\.m2\repository\io\qameta\allure\allure-model\2.15.0\allure-model-2.15.0.jar;C:\Users\v_shutingma\.m2\repository\io\qameta\allure\allure-test-filter\2.15.0\allure-test-filter-2.15.0.jar;C:\Users\v_shutingma\.m2\repository\org\apache\commons\commons-text\1.9\commons-text-1.9.jar;C:\Users\v_shutingma\.m2\repository\org\pegdown\pegdown\1.6.0\pegdown-1.6.0.jar;C:\Users\v_shutingma\.m2\repository\org\parboiled\parboiled-java\1.1.7\parboiled-java-1.1.7.jar;C:\Users\v_shutingma\.m2\repository\org\parboiled\parboiled-core\1.1.7\parboiled-core-1.1.7.jar;C:\Users\v_shutingma\.m2\repository\org\ow2\asm\asm-tree\5.0.3\asm-tree-5.0.3.jar;C:\Users\v_shutingma\.m2\repository\org\ow2\asm\asm-analysis\5.0.3\asm-analysis-5.0.3.jar;C:\Users\v_shutingma\.m2\repository\org\ow2\asm\asm-util\5.0.3\asm-util-5.0.3.jar;C:\Users\v_shutingma\.m2\repository\com\google\guava\guava\31.0.1-jre\guava-31.0.1-jre.jar;C:\Users\v_shutingma\.m2\repository\com\google\guava\failureaccess\1.0.1\failureaccess-1.0.1.jar;C:\Users\v_shutingma\.m2\repository\com\google\guava\listenablefuture\9999.0-empty-to-avoid-conflict-with-guava\listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar;C:\Users\v_shutingma\.m2\repository\com\google\code\findbugs\jsr305\3.0.2\jsr305-3.0.2.jar;C:\Users\v_shutingma\.m2\repository\org\checkerframework\checker-qual\3.12.0\checker-qual-3.12.0.jar;C:\Users\v_shutingma\.m2\repository\com\google\errorprone\error_prone_annotations\2.7.1\error_prone_annotations-2.7.1.jar;C:\Users\v_shutingma\.m2\repository\com\google\j2objc\j2objc-annotations\1.3\j2objc-annotations-1.3.jar;C:\Users\v_shutingma\.m2\repository\xalan\xalan\2.7.2\xalan-2.7.2.jar;C:\Users\v_shutingma\.m2\repository\xalan\serializer\2.7.2\serializer-2.7.2.jar;C:\Users\v_shutingma\.m2\repository\xml-apis\xml-apis\1.3.04\xml-apis-1.3.04.jar;C:\Users\v_shutingma\.m2\repository\javax\xml\bind\jaxb-api\2.4.0-b180830.0359\jaxb-api-2.4.0-b180830.0359.jar;C:\Users\v_shutingma\.m2\repository\javax\activation\javax.activation-api\1.2.0\javax.activation-api-1.2.0.jar;C:\Users\v_shutingma\.m2\repository\net\bytebuddy\byte-buddy\1.11.20\byte-buddy-1.11.20.jar;C:\Users\v_shutingma\.m2\repository\org\jyaml\jyaml\1.3\jyaml-1.3.jar;C:\Users\v_shutingma\.m2\repository\org\yaml\snakeyaml\1.29\snakeyaml-1.29.jar;C:\Users\v_shutingma\.m2\repository\org\junit\platform\junit-platform-launcher\1.8.1\junit-platform-launcher-1.8.1.jar;C:\Users\v_shutingma\.m2\repository\org\junit\platform\junit-platform-engine\1.8.1\junit-platform-engine-1.8.1.jar;C:\Users\v_shutingma\.m2\repository\org\junit\platform\junit-platform-commons\1.8.1\junit-platform-commons-1.8.1.jar;C:\Users\v_shutingma\.m2\repository\org\junit\vintage\junit-vintage-engine\5.8.1\junit-vintage-engine-5.8.1.jar;C:\Users\v_shutingma\.m2\repository\junit\junit\4.13.2\junit-4.13.2.jar;C:\Users\v_shutingma\.m2\repository\org\hamcrest\hamcrest-core\1.3\hamcrest-core-1.3.jar;C:\Users\v_shutingma\.m2\repository\org\jdom\jdom2\2.0.6\jdom2-2.0.6.jar;C:\Users\v_shutingma\.m2\repository\jaxen\jaxen\1.2.0\jaxen-1.2.0.jar;C:\Users\v_shutingma\.m2\repository\org\apache\maven\plugins\maven-assembly-plugin\3.3.0\maven-assembly-plugin-3.3.0.jar;C:\Users\v_shutingma\.m2\repository\org\apache\maven\maven-artifact\3.0\maven-artifact-3.0.jar;C:\Users\v_shutingma\.m2\repository\org\apache\maven\maven-model\3.0\maven-model-3.0.jar;C:\Users\v_shutingma\.m2\repository\org\apache\maven\shared\maven-common-artifact-filters\3.1.0\maven-common-artifact-filters-3.1.0.jar;C:\Users\v_shutingma\.m2\repository\org\sonatype\sisu\sisu-inject-plexus\1.4.2\sisu-inject-plexus-1.4.2.jar;C:\Users\v_shutingma\.m2\repository\org\sonatype\sisu\sisu-inject-bean\1.4.2\sisu-inject-bean-1.4.2.jar;C:\Users\v_shutingma\.m2\repository\org\sonatype\sisu\sisu-guice\2.1.7\sisu-guice-2.1.7-noaop.jar;C:\Users\v_shutingma\.m2\repository\org\apache\maven\shared\maven-shared-utils\3.1.0\maven-shared-utils-3.1.0.jar;C:\Users\v_shutingma\.m2\repository\org\apache\maven\shared\maven-artifact-transfer\0.11.0\maven-artifact-transfer-0.11.0.jar;C:\Users\v_shutingma\.m2\repository\org\codehaus\plexus\plexus-interpolation\1.25\plexus-interpolation-1.25.jar;C:\Users\v_shutingma\.m2\repository\org\codehaus\plexus\plexus-archiver\4.2.1\plexus-archiver-4.2.1.jar;C:\Users\v_shutingma\.m2\repository\org\apache\commons\commons-compress\1.19\commons-compress-1.19.jar;C:\Users\v_shutingma\.m2\repository\org\iq80\snappy\snappy\0.4\snappy-0.4.jar;C:\Users\v_shutingma\.m2\repository\org\tukaani\xz\1.8\xz-1.8.jar;C:\Users\v_shutingma\.m2\repository\org\apache\maven\shared\file-management\3.0.0\file-management-3.0.0.jar;C:\Users\v_shutingma\.m2\repository\org\apache\maven\shared\maven-shared-io\3.0.0\maven-shared-io-3.0.0.jar;C:\Users\v_shutingma\.m2\repository\org\apache\maven\maven-compat\3.0\maven-compat-3.0.jar;C:\Users\v_shutingma\.m2\repository\org\apache\maven\wagon\wagon-provider-api\2.10\wagon-provider-api-2.10.jar;C:\Users\v_shutingma\.m2\repository\org\apache\maven\shared\maven-filtering\3.1.1\maven-filtering-3.1.1.jar;C:\Users\v_shutingma\.m2\repository\org\sonatype\plexus\plexus-build-api\0.0.7\plexus-build-api-0.0.7.jar;C:\Users\v_shutingma\.m2\repository\org\codehaus\plexus\plexus-io\3.2.0\plexus-io-3.2.0.jar;C:\Users\v_shutingma\.m2\repository\org\apache\maven\maven-archiver\3.5.0\maven-archiver-3.5.0.jar;C:\Users\v_shutingma\.m2\repository\org\codehaus\plexus\plexus-utils\3.3.0\plexus-utils-3.3.0.jar;C:\Users\v_shutingma\.m2\repository\com\lihaoyi\requests_2.13\0.6.5\requests_2.13-0.6.5.jar;C:\Users\v_shutingma\.m2\repository\com\lihaoyi\geny_2.13\0.6.2\geny_2.13-0.6.2.jar;C:\Program Files (x86)\scala\lib\scala-library.jar;C:\Program Files (x86)\scala\lib\scala-reflect.jar;G:\IntelliJ IDEA 2021.2.3\lib\idea_rt.jar" com.ceshiren.appcrawler.AppCrawler --capability appPackage=com.tencent.wemeet.app,appActivity=com.tencent.wemeet.app.StartupActivity -c G:\appcrawler\demo.yaml Connected to the target VM, address: '127.0.0.1:65096', transport: 'socket' 2022-01-17 13:34:11 INFO [AppCrawler$.68.main] ------------------------------------------------- appcrawler v2.7.4 全平台自动遍历测试工具 Q&A: https://ceshiren.com/c/opensource/appcrawler author: 思寒_seveniruby 天马 霍格沃兹测试开发学社 ------------------------------------------------- 2022-01-17 13:34:11 INFO [AppCrawler$.185.parseParams] Find Conf G:\appcrawler\demo.yaml 2022-01-17 13:34:12 INFO [AppCrawler$.214.parseParams] use appium in the config file http://127.0.0.1:4723/wd/hub 2022-01-17 13:34:12 INFO [AppCrawler$.326.addLogFile] ------------------------------------------------- appcrawler v2.7.4 全平台自动遍历测试工具 Q&A: https://ceshiren.com/c/opensource/appcrawler author: 思寒_seveniruby 天马 霍格沃兹测试开发学社 ------------------------------------------------- 2022-01-17 13:34:12 INFO [AppCrawler$.329.addLogFile] result directory = 20220117133410_com.tencent.wemeet.app 2022-01-17 13:34:12 INFO [Crawler.126.start] set xpath attribute with List(name(), name, label, value, resource-id, content-desc, text, id, name, innerText, tag, class) 2022-01-17 13:34:12 INFO [Crawler.130.start] set tag attribute with List(name(), name, label, resource-id, content-desc, id, name, tag, class) 2022-01-17 13:34:12 INFO [Crawler.100.$anonfun$loadPlugins$3] com.ceshiren.appcrawler.plugin.TagLimitPlugin@26221bad 2022-01-17 13:34:12 INFO [Crawler.100.$anonfun$loadPlugins$3] com.ceshiren.appcrawler.plugin.ReportPlugin@158f4cfe 2022-01-17 13:34:12 INFO [Crawler.100.$anonfun$loadPlugins$3] com.ceshiren.appcrawler.plugin.FreeMind@35f639fa 2022-01-17 13:34:12 INFO [Plugin.22.init] com.ceshiren.appcrawler.plugin.TagLimitPlugin init 2022-01-17 13:34:12 INFO [Plugin.22.init] com.ceshiren.appcrawler.plugin.ReportPlugin init 2022-01-17 13:34:12 INFO [Plugin.22.init] com.ceshiren.appcrawler.plugin.FreeMind init 2022-01-17 13:34:12 INFO [ReportFactory$.33.initReportPath] reportPath=H:\框架源码\AppCrawler\20220117133410_com.tencent.wemeet.app 2022-01-17 13:34:12 INFO [ReportFactory$.35.initReportPath] testcaseDir=H:\框架源码\AppCrawler\20220117133410_com.tencent.wemeet.app/tmp/ 2022-01-17 13:34:12 INFO [ReportFactory$.38.initReportPath] create H:\框架源码\AppCrawler\20220117133410_com.tencent.wemeet.app\tmp directory 2022-01-17 13:34:12 INFO [Crawler.137.start] prepare setup Appium 2022-01-17 13:34:12 INFO [Crawler.301.setupCrawler] afterAllMax=2 2022-01-17 13:34:14 INFO [Crawler.310.setupDriver] 2022-01-17 13:34:14 INFO [Crawler.346.setupDriver] use AppiumClient 2022-01-17 13:34:14 INFO [AppiumClient.45.] Capabilities {app: , appActivity: com.tencent.wemeet.app.Star..., appPackage: com.tencent.wemeet.app, appium: http://127.0.0.1:4723/wd/hub, deviceName: demo, dontStopAppOnReset: false, fullReset: false, newCommandTimeout: 120, noReset: true} 一月 17, 2022 1:34:20 下午 io.appium.java_client.remote.AppiumCommandExecutor$1 lambda$0 信息: Detected dialect: W3C 2022-01-17 13:34:20 INFO [SeleniumDriver.58.getDeviceInfo] screenWidth=1440 screenHeight=2984 2022-01-17 13:34:20 INFO [AppiumClient.76.] capture dir = H:\框架源码\AppCrawler\. 2022-01-17 13:34:20 INFO [Crawler.351.setupDriver] com.ceshiren.appcrawler.driver.AppiumClient@71039ce1 import sys.process._ val driver: com.ceshiren.appcrawler.driver.ReactWebDriver = com.ceshiren.appcrawler.driver.AppiumClient@71039ce1 def crawl(depth: Int): Unit 2022-01-17 13:34:24 INFO [Crawler.148.start] platformName= driver=com.ceshiren.appcrawler.driver.AppiumClient@71039ce1 2022-01-17 13:34:24 INFO [Crawler.149.start] ------------------------------------------------- appcrawler v2.7.4 全平台自动遍历测试工具 Q&A: https://ceshiren.com/c/opensource/appcrawler author: 思寒_seveniruby 天马 霍格沃兹测试开发学社 ------------------------------------------------- 2022-01-17 13:34:24 INFO [Crawler.179.waitAppLoaded] start wait app loaded timeout = 10000 2022-01-17 13:34:25 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:34:25 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:25 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:25 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:25 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@6121856b 2022-01-17 13:34:25 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:25 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@6121856b 2022-01-17 13:34:25 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:25 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@6121856b 2022-01-17 13:34:25 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@6121856b 2022-01-17 13:34:25 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.GuestGuideActivity 2022-01-17 13:34:25 INFO [Crawler.762.parsePageContext] currentContentHash=70a069884f771d85d744add4af3786c9 lastContentHash=70a069884f771d85d744add4af3786c9 2022-01-17 13:34:25 INFO [DataRecord.25.isDiff] just only record return false 2022-01-17 13:34:25 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:26 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:34:26 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:26 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:26 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:26 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@622ff825 2022-01-17 13:34:26 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:26 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@622ff825 2022-01-17 13:34:26 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:26 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@622ff825 2022-01-17 13:34:26 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@622ff825 2022-01-17 13:34:26 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.GuestGuideActivity 2022-01-17 13:34:26 INFO [Crawler.762.parsePageContext] currentContentHash=70a069884f771d85d744add4af3786c9 lastContentHash=70a069884f771d85d744add4af3786c9 2022-01-17 13:34:26 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:27 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:34:27 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:27 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:27 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:27 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@671efe1 2022-01-17 13:34:27 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:27 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@671efe1 2022-01-17 13:34:27 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:27 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@671efe1 2022-01-17 13:34:27 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@671efe1 2022-01-17 13:34:28 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.GuestGuideActivity 2022-01-17 13:34:28 INFO [Crawler.762.parsePageContext] currentContentHash=70a069884f771d85d744add4af3786c9 lastContentHash=70a069884f771d85d744add4af3786c9 2022-01-17 13:34:28 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:29 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:34:29 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:29 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:29 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:29 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@6e720314 2022-01-17 13:34:29 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:29 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@6e720314 2022-01-17 13:34:29 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:29 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@6e720314 2022-01-17 13:34:29 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@6e720314 2022-01-17 13:34:29 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.GuestGuideActivity 2022-01-17 13:34:29 INFO [Crawler.762.parsePageContext] currentContentHash=70a069884f771d85d744add4af3786c9 lastContentHash=70a069884f771d85d744add4af3786c9 2022-01-17 13:34:29 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:30 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:34:30 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:30 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:30 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:30 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@1d063dcd 2022-01-17 13:34:30 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:30 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@1d063dcd 2022-01-17 13:34:30 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:30 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@1d063dcd 2022-01-17 13:34:30 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@1d063dcd 2022-01-17 13:34:30 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.GuestGuideActivity 2022-01-17 13:34:30 INFO [Crawler.762.parsePageContext] currentContentHash=70a069884f771d85d744add4af3786c9 lastContentHash=70a069884f771d85d744add4af3786c9 2022-01-17 13:34:30 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:31 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:34:31 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:31 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:31 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:31 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@67c1f187 2022-01-17 13:34:31 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:31 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@67c1f187 2022-01-17 13:34:31 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:31 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@67c1f187 2022-01-17 13:34:31 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@67c1f187 2022-01-17 13:34:31 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.GuestGuideActivity 2022-01-17 13:34:31 INFO [Crawler.762.parsePageContext] currentContentHash=70a069884f771d85d744add4af3786c9 lastContentHash=70a069884f771d85d744add4af3786c9 2022-01-17 13:34:31 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:32 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:34:32 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:32 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:33 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:33 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@28b2be7c 2022-01-17 13:34:33 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:33 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@28b2be7c 2022-01-17 13:34:33 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:33 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@28b2be7c 2022-01-17 13:34:33 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@28b2be7c 2022-01-17 13:34:33 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.GuestGuideActivity 2022-01-17 13:34:33 INFO [Crawler.762.parsePageContext] currentContentHash=70a069884f771d85d744add4af3786c9 lastContentHash=70a069884f771d85d744add4af3786c9 2022-01-17 13:34:33 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:34 INFO [LogicUtils$.91.asyncTask] use time 10.003 seconds name=waitAppLoaded result=error 2022-01-17 13:34:34 ERROR [LogicUtils$.98.asyncTask] 10 seconds timeout 2022-01-17 13:34:34 INFO [Crawler.201.waitAppLoaded] wait finish 2022-01-17 13:34:34 INFO [Crawler.152.start] driver=null 2022-01-17 13:34:34 INFO [Crawler.153.start] get screen info 2022-01-17 13:34:34 INFO [SeleniumDriver.58.getDeviceInfo] screenWidth=1440 screenHeight=2984 2022-01-17 13:34:34 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:34 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:34 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:34:34 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:34 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:34 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:34 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@4250b0c1 2022-01-17 13:34:34 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:34 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@4250b0c1 2022-01-17 13:34:34 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:34 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@4250b0c1 2022-01-17 13:34:34 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@4250b0c1 2022-01-17 13:34:34 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:34 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@7bd76892 2022-01-17 13:34:34 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:34 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@7bd76892 2022-01-17 13:34:34 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:34 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@7bd76892 2022-01-17 13:34:34 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@7bd76892 2022-01-17 13:34:34 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.GuestGuideActivity 2022-01-17 13:34:34 INFO [Crawler.762.parsePageContext] currentContentHash=70a069884f771d85d744add4af3786c9 lastContentHash=70a069884f771d85d744add4af3786c9 2022-01-17 13:34:34 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:34 INFO [Crawler.259.firstRefresh] first refresh 2022-01-17 13:34:34 INFO [Crawler.776.beforeElementAction] com.tencent.wemeet.app.GuestGuideActivity.tag=Start.depth=2.id=Start.name=Start 2022-01-17 13:34:34 INFO [Crawler.1063.doElementAction] current index = 0 2022-01-17 13:34:34 INFO [Crawler.1064.doElementAction] current xpath = //android.widget.FrameLayout[@class='android.widget.FrameLayout'] 2022-01-17 13:34:34 INFO [Crawler.1065.doElementAction] current action = _Start 2022-01-17 13:34:34 INFO [Crawler.1066.doElementAction] current element = com.tencent.wemeet.app.GuestGuideActivity.tag=Start.depth=2.id=Start.name=Start 2022-01-17 13:34:34 INFO [Crawler.1067.doElementAction] current url = com.tencent.wemeet.app.GuestGuideActivity 2022-01-17 13:34:34 INFO [Crawler.1068.doElementAction] current tag path = //android.widget.FrameLayout[@class='android.widget.FrameLayout'] 2022-01-17 13:34:34 INFO [Crawler.1069.doElementAction] current file name = com.tencent.wemeet.app.GuestGuideActivity.tag=Start.depth=2.id=Start.name=Start 2022-01-17 13:34:34 INFO [URIElementStore.67.saveReqHash] save reqHash to 0 2022-01-17 13:34:34 INFO [URIElementStore.83.saveReqDom] save reqDom to 0 2022-01-17 13:34:34 INFO [Crawler.1079.doElementAction] just log 2022-01-17 13:34:34 INFO [Crawler.1080.doElementAction] { "url" : "com.tencent.wemeet.app.GuestGuideActivity", "tag" : "Start", "className" : "android.widget.FrameLayout", "id" : "Start", "name" : "Start", "text" : "", "instance" : "", "depth" : "2", "latest" : "0", "valid" : "true", "selected" : "false", "xpath" : "//android.widget.FrameLayout[@class='android.widget.FrameLayout']", "ancestor" : "//android.widget.FrameLayout[@class='android.widget.FrameLayout']", "x" : 0, "y" : 0, "width" : 1440, "height" : 2984, "action" : "_Start" } 2022-01-17 13:34:34 INFO [Crawler.1177.doElementAction] afterAllRetry = 0 because of last action not equal to after 2022-01-17 13:34:34 INFO [Crawler.1181.doElementAction] sleep 1000 ms 2022-01-17 13:34:34 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.GuestGuideActivity 2022-01-17 13:34:34 INFO [Crawler.762.parsePageContext] currentContentHash=70a069884f771d85d744add4af3786c9 lastContentHash=70a069884f771d85d744add4af3786c9 2022-01-17 13:34:34 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:35 INFO [Crawler.801.afterElementAction] mark image exist 2022-01-17 13:34:35 INFO [Crawler.1235.saveScreen] start screenshot 2022-01-17 13:34:35 INFO [Crawler.1240.$anonfun$saveScreen$2] ui change screenshot again 2022-01-17 13:34:35 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:34:35 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:35 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:36 INFO [LogicUtils$.83.asyncTask] use time 0.545 seconds name=screenshot result=success 2022-01-17 13:34:36 INFO [Crawler.1246.saveScreen] screenshot success 2022-01-17 13:34:36 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:36 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:36 INFO [LogicUtils$.83.asyncTask] use time 0.605 seconds name=getPageSource result=success 2022-01-17 13:34:36 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:36 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@7c742469 2022-01-17 13:34:36 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:36 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@7c742469 2022-01-17 13:34:36 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:36 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@7c742469 2022-01-17 13:34:36 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@7c742469 2022-01-17 13:34:36 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:36 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@f461c9c 2022-01-17 13:34:36 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:36 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@f461c9c 2022-01-17 13:34:36 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:36 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@f461c9c 2022-01-17 13:34:36 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@f461c9c 2022-01-17 13:34:36 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.GuestGuideActivity 2022-01-17 13:34:36 INFO [Crawler.762.parsePageContext] currentContentHash=70a069884f771d85d744add4af3786c9 lastContentHash=70a069884f771d85d744add4af3786c9 2022-01-17 13:34:36 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:36 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.GuestGuideActivity 2022-01-17 13:34:36 INFO [Crawler.762.parsePageContext] currentContentHash=70a069884f771d85d744add4af3786c9 lastContentHash=70a069884f771d85d744add4af3786c9 2022-01-17 13:34:36 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:36 INFO [Crawler.1221.saveDom] save to 20220117133410_com.tencent.wemeet.app/0_com.tencent.wemeet.app.GuestGuideActivity.tag=Start.depth=2.id=Start.name=Start.clicked.xml 2022-01-17 13:34:36 INFO [URIElementStore.75.saveResHash] save resHash to 0 2022-01-17 13:34:36 INFO [URIElementStore.106.saveResImg] save resImg 20220117133410_com.tencent.wemeet.app/0_com.tencent.wemeet.app.GuestGuideActivity.tag=Start.depth=2.id=Start.name=Start.clicked.png to 0 2022-01-17 13:34:36 INFO [URIElementStore.90.saveResDom] save resDom to 0 2022-01-17 13:34:36 INFO [Crawler.160.start] append current app name to appWhiteList 2022-01-17 13:34:36 INFO [Crawler.164.start] run steps 2022-01-17 13:34:36 INFO [Crawler.288.runSteps] run testcases 2022-01-17 13:34:36 INFO [AutomationSuite.16.beforeAll] beforeAll AutomationSuite: 2022-01-17 13:34:36 INFO [AutomationSuite.24.$anonfun$new$1] testcase start 2022-01-17 13:34:36 INFO [AutomationSuite.31.$anonfun$new$2] --- given: [] when: null then: [] xpath: "/*/*" action: "Thread.sleep(1000)" actions: [] times: -1 2022-01-17 13:34:36 INFO [Crawler.776.beforeElementAction] Steps.tag=FrameLayout.depth=2 2022-01-17 13:34:36 INFO [Crawler.1063.doElementAction] current index = 1 2022-01-17 13:34:36 INFO [Crawler.1064.doElementAction] current xpath = //android.widget.FrameLayout[@class='android.widget.FrameLayout'] 2022-01-17 13:34:36 INFO [Crawler.1065.doElementAction] current action = Thread.sleep(1000) 2022-01-17 13:34:36 INFO [Crawler.1066.doElementAction] current element = Steps.tag=FrameLayout.depth=2 2022-01-17 13:34:36 INFO [Crawler.1067.doElementAction] current url = Steps 2022-01-17 13:34:36 INFO [Crawler.1068.doElementAction] current tag path = //android.widget.FrameLayout[@class='android.widget.FrameLayout'] 2022-01-17 13:34:36 INFO [Crawler.1069.doElementAction] current file name = Steps.tag=FrameLayout.depth=2 2022-01-17 13:34:36 INFO [URIElementStore.67.saveReqHash] save reqHash to 1 2022-01-17 13:34:36 INFO [URIElementStore.83.saveReqDom] save reqDom to 1 2022-01-17 13:34:36 INFO [URIElementStore.97.saveReqImg] save reqImg 20220117133410_com.tencent.wemeet.app/1_Steps.tag=FrameLayout.depth=2.click.png to 1 2022-01-17 13:34:36 INFO [Crawler.1194.saveElementScreenshot] draw element in 20220117133410_com.tencent.wemeet.app/1_Steps.tag=FrameLayout.depth=2.click.png 2022-01-17 13:34:36 INFO [ScreenShot.45.clip] write png 20220117133410_com.tencent.wemeet.app/1_Steps.tag=FrameLayout.depth=2.click.png 2022-01-17 13:34:36 INFO [ScreenShot.57.clip] ImageIO.write newImageName 20220117133410_com.tencent.wemeet.app/1_Steps.tag=FrameLayout.depth=2.click.png 2022-01-17 13:34:37 INFO [Crawler.1128.doElementAction] need input Thread.sleep(1000) 2022-01-17 13:34:37 INFO [ReactWebDriver.36.findElement] find by uri element= Steps.tag=FrameLayout.depth=2 2022-01-17 13:34:37 INFO [AppiumClient.190.findElements] findElementsByXPath //android.widget.FrameLayout[@class='android.widget.FrameLayout'] 2022-01-17 13:34:37 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:34:37 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:37 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:37 INFO [ReactWebDriver.43.findElement] find by xpath success 2022-01-17 13:34:37 INFO [DynamicEval$.70.dsl] eval Thread.sleep(1000) 2022-01-17 13:34:37 INFO [DynamicEval$.97.eval] Thread.sleep(1000) 2022-01-17 13:34:37 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:37 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@9a6eae2 2022-01-17 13:34:37 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:37 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@9a6eae2 2022-01-17 13:34:37 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:37 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@9a6eae2 2022-01-17 13:34:37 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@9a6eae2 2022-01-17 13:34:37 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.GuestGuideActivity 2022-01-17 13:34:37 INFO [Crawler.762.parsePageContext] currentContentHash=70a069884f771d85d744add4af3786c9 lastContentHash=70a069884f771d85d744add4af3786c9 2022-01-17 13:34:37 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:38 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:34:38 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:38 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:38 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:38 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@5a314a57 2022-01-17 13:34:38 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:38 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@5a314a57 2022-01-17 13:34:38 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:38 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@5a314a57 2022-01-17 13:34:38 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@5a314a57 2022-01-17 13:34:38 INFO [DynamicEval$.98.eval] Success 2022-01-17 13:34:38 INFO [DynamicEval$.99.eval] eval finish 2022-01-17 13:34:38 INFO [DynamicEval$.72.dsl] () 2022-01-17 13:34:38 INFO [LogicUtils$.83.asyncTask] use time 1.268 seconds name=action result=success 2022-01-17 13:34:38 INFO [Crawler.1177.doElementAction] afterAllRetry = 0 because of last action not equal to after 2022-01-17 13:34:38 INFO [Crawler.1181.doElementAction] sleep 1000 ms 2022-01-17 13:34:38 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.GuestGuideActivity 2022-01-17 13:34:38 INFO [Crawler.762.parsePageContext] currentContentHash=70a069884f771d85d744add4af3786c9 lastContentHash=70a069884f771d85d744add4af3786c9 2022-01-17 13:34:38 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:39 INFO [Crawler.801.afterElementAction] mark image exist 2022-01-17 13:34:39 INFO [Crawler.1235.saveScreen] start screenshot 2022-01-17 13:34:39 INFO [Crawler.1240.$anonfun$saveScreen$2] ui change screenshot again 2022-01-17 13:34:39 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:34:39 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:39 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:40 INFO [LogicUtils$.83.asyncTask] use time 0.5 seconds name=screenshot result=success 2022-01-17 13:34:40 INFO [Crawler.1246.saveScreen] screenshot success 2022-01-17 13:34:40 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:40 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:40 INFO [LogicUtils$.83.asyncTask] use time 0.532 seconds name=getPageSource result=success 2022-01-17 13:34:40 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:40 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@174cd45d 2022-01-17 13:34:40 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:40 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@174cd45d 2022-01-17 13:34:40 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:40 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@174cd45d 2022-01-17 13:34:40 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@174cd45d 2022-01-17 13:34:40 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:40 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@7672dd7a 2022-01-17 13:34:40 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:40 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@7672dd7a 2022-01-17 13:34:40 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:40 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@7672dd7a 2022-01-17 13:34:40 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@7672dd7a 2022-01-17 13:34:40 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.GuestGuideActivity 2022-01-17 13:34:40 INFO [Crawler.762.parsePageContext] currentContentHash=70a069884f771d85d744add4af3786c9 lastContentHash=70a069884f771d85d744add4af3786c9 2022-01-17 13:34:40 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:40 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.GuestGuideActivity 2022-01-17 13:34:40 INFO [Crawler.762.parsePageContext] currentContentHash=70a069884f771d85d744add4af3786c9 lastContentHash=70a069884f771d85d744add4af3786c9 2022-01-17 13:34:40 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:40 INFO [Crawler.1221.saveDom] save to 20220117133410_com.tencent.wemeet.app/1_Steps.tag=FrameLayout.depth=2.clicked.xml 2022-01-17 13:34:40 INFO [URIElementStore.75.saveResHash] save resHash to 1 2022-01-17 13:34:40 INFO [URIElementStore.106.saveResImg] save resImg 20220117133410_com.tencent.wemeet.app/1_Steps.tag=FrameLayout.depth=2.clicked.png to 1 2022-01-17 13:34:40 INFO [URIElementStore.90.saveResDom] save resDom to 1 2022-01-17 13:34:40 INFO [AutomationSuite.77.$anonfun$new$1] finish run steps - run steps 2022-01-17 13:34:40 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:40 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:40 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:40 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@6ff05f85 2022-01-17 13:34:40 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:40 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@6ff05f85 2022-01-17 13:34:40 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:40 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@6ff05f85 2022-01-17 13:34:40 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@6ff05f85 2022-01-17 13:34:40 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.GuestGuideActivity 2022-01-17 13:34:40 INFO [Crawler.762.parsePageContext] currentContentHash=70a069884f771d85d744add4af3786c9 lastContentHash=70a069884f771d85d744add4af3786c9 2022-01-17 13:34:40 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:40 INFO [Crawler.1324.handleCtrlC] add shutdown hook 2022-01-17 13:34:41 INFO [Crawler.965.crawl] crawl use 28600 ms 2022-01-17 13:34:41 INFO [Crawler.973.crawl] crawl next 2022-01-17 13:34:41 INFO [Crawler.526.getAvailableElement] selected nodes size = 6 2022-01-17 13:34:41 INFO [Crawler.563.getAvailableElement] selectedElements - black elements size = 6 2022-01-17 13:34:41 INFO [Crawler.582.getAvailableElement] selectedElements - backButton size=6 2022-01-17 13:34:41 INFO [Crawler.590.getAvailableElement] selectedElements - clicked size=6 2022-01-17 13:34:41 INFO [Crawler.597.getAvailableElement] selectedElements - skiped fresh elements size=6 2022-01-17 13:34:41 INFO [Crawler.647.getAvailableElement] next element Some(com.tencent.wemeet.app.GuestGuideActivity.tag=Button.depth=8.id=g3.text=加入会议) 2022-01-17 13:34:41 INFO [TagLimitPlugin.48.fixElementAction] tagLimit[com.tencent.wemeet.app.GuestGuideActivity//android.widget.FrameLayout[@class='android.widget.FrameLayout']//android.widget.LinearLayout[@class='android.widget.LinearLayout']//android.widget.FrameLayout[@class='android.widget.FrameLayout']//android.widget.LinearLayout[@resource-id='com.tencent.wemeet.app:id/ar' and @class='android.widget.LinearLayout']//android.widget.FrameLayout[@resource-id='android:id/content' and @class='android.widget.FrameLayout']//android.view.ViewGroup[@resource-id='com.tencent.wemeet.app:id/rj' and @class='android.view.ViewGroup']//android.widget.Button[@resource-id='com.tencent.wemeet.app:id/g3' and @class='android.widget.Button']]=20 2022-01-17 13:34:41 INFO [Crawler.776.beforeElementAction] com.tencent.wemeet.app.GuestGuideActivity.tag=Button.depth=8.id=g3.text=加入会议 2022-01-17 13:34:41 INFO [Crawler.1063.doElementAction] current index = 2 2022-01-17 13:34:41 INFO [Crawler.1064.doElementAction] current xpath = //android.widget.FrameLayout[@class='android.widget.FrameLayout']//android.widget.LinearLayout[@class='android.widget.LinearLayout']//android.widget.FrameLayout[@class='android.widget.FrameLayout']//android.widget.LinearLayout[@resource-id='com.tencent.wemeet.app:id/ar' and @class='android.widget.LinearLayout']//android.widget.FrameLayout[@resource-id='android:id/content' and @class='android.widget.FrameLayout']//android.view.ViewGroup[@resource-id='com.tencent.wemeet.app:id/rj' and @class='android.view.ViewGroup']//android.widget.Button[@resource-id='com.tencent.wemeet.app:id/g3' and @text='加入会议' and @class='android.widget.Button'] 2022-01-17 13:34:41 INFO [Crawler.1065.doElementAction] current action = click 2022-01-17 13:34:41 INFO [Crawler.1066.doElementAction] current element = com.tencent.wemeet.app.GuestGuideActivity.tag=Button.depth=8.id=g3.text=加入会议 2022-01-17 13:34:41 INFO [Crawler.1067.doElementAction] current url = com.tencent.wemeet.app.GuestGuideActivity 2022-01-17 13:34:41 INFO [Crawler.1068.doElementAction] current tag path = //android.widget.FrameLayout[@class='android.widget.FrameLayout']//android.widget.LinearLayout[@class='android.widget.LinearLayout']//android.widget.FrameLayout[@class='android.widget.FrameLayout']//android.widget.LinearLayout[@resource-id='com.tencent.wemeet.app:id/ar' and @class='android.widget.LinearLayout']//android.widget.FrameLayout[@resource-id='android:id/content' and @class='android.widget.FrameLayout']//android.view.ViewGroup[@resource-id='com.tencent.wemeet.app:id/rj' and @class='android.view.ViewGroup']//android.widget.Button[@resource-id='com.tencent.wemeet.app:id/g3' and @class='android.widget.Button'] 2022-01-17 13:34:41 INFO [Crawler.1069.doElementAction] current file name = com.tencent.wemeet.app.GuestGuideActivity.tag=Button.depth=8.id=g3.text=加入会议 2022-01-17 13:34:41 INFO [URIElementStore.67.saveReqHash] save reqHash to 2 2022-01-17 13:34:41 INFO [URIElementStore.83.saveReqDom] save reqDom to 2 2022-01-17 13:34:41 INFO [URIElementStore.97.saveReqImg] save reqImg 20220117133410_com.tencent.wemeet.app/2_com.tencent.wemeet.app.GuestGuideActivity.tag=Button.depth=8.id=g3.text=加入会议.click.png to 2 2022-01-17 13:34:41 INFO [Crawler.1194.saveElementScreenshot] draw element in 20220117133410_com.tencent.wemeet.app/2_com.tencent.wemeet.app.GuestGuideActivity.tag=Button.depth=8.id=g3.text=加入会议.click.png 2022-01-17 13:34:41 INFO [ScreenShot.45.clip] write png 20220117133410_com.tencent.wemeet.app/2_com.tencent.wemeet.app.GuestGuideActivity.tag=Button.depth=8.id=g3.text=加入会议.click.png 2022-01-17 13:34:41 INFO [ScreenShot.57.clip] ImageIO.write newImageName 20220117133410_com.tencent.wemeet.app/2_com.tencent.wemeet.app.GuestGuideActivity.tag=Button.depth=8.id=g3.text=加入会议.click.png 2022-01-17 13:34:41 INFO [Crawler.1128.doElementAction] need input click 2022-01-17 13:34:41 INFO [ReactWebDriver.36.findElement] find by uri element= com.tencent.wemeet.app.GuestGuideActivity.tag=Button.depth=8.id=g3.text=加入会议 2022-01-17 13:34:41 INFO [AppiumClient.190.findElements] findElementsByXPath //android.widget.FrameLayout[@class='android.widget.FrameLayout']//android.widget.LinearLayout[@class='android.widget.LinearLayout']//android.widget.FrameLayout[@class='android.widget.FrameLayout']//android.widget.LinearLayout[@resource-id='com.tencent.wemeet.app:id/ar' and @class='android.widget.LinearLayout']//android.widget.FrameLayout[@resource-id='android:id/content' and @class='android.widget.FrameLayout']//android.view.ViewGroup[@resource-id='com.tencent.wemeet.app:id/rj' and @class='android.view.ViewGroup']//android.widget.Button[@resource-id='com.tencent.wemeet.app:id/g3' and @text='加入会议' and @class='android.widget.Button'] 2022-01-17 13:34:41 INFO [ReactWebDriver.43.findElement] find by xpath success 2022-01-17 13:34:41 INFO [Crawler.1147.$anonfun$doElementAction$3] click element 2022-01-17 13:34:41 INFO [Crawler.1177.doElementAction] afterAllRetry = 0 because of last action not equal to after 2022-01-17 13:34:41 INFO [Crawler.1181.doElementAction] sleep 1000 ms 2022-01-17 13:34:41 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:34:41 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:41 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:42 INFO [LogicUtils$.83.asyncTask] use time 0.894 seconds name=getPageSource result=success 2022-01-17 13:34:42 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:42 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@3ace8ba7 2022-01-17 13:34:42 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:42 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@3ace8ba7 2022-01-17 13:34:42 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:42 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@3ace8ba7 2022-01-17 13:34:42 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@3ace8ba7 2022-01-17 13:34:42 INFO [Crawler.801.afterElementAction] mark image exist 2022-01-17 13:34:42 INFO [Crawler.1235.saveScreen] start screenshot 2022-01-17 13:34:42 INFO [Crawler.1240.$anonfun$saveScreen$2] ui change screenshot again 2022-01-17 13:34:42 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.JoinActivity 2022-01-17 13:34:42 INFO [Crawler.762.parsePageContext] currentContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b lastContentHash=70a069884f771d85d744add4af3786c9 2022-01-17 13:34:42 INFO [Crawler.764.parsePageContext] ui change 2022-01-17 13:34:43 INFO [Crawler.1246.saveScreen] screenshot success 2022-01-17 13:34:43 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:43 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:43 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:43 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@20183e2d 2022-01-17 13:34:43 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:43 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@20183e2d 2022-01-17 13:34:43 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:43 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@20183e2d 2022-01-17 13:34:43 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@20183e2d 2022-01-17 13:34:43 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.JoinActivity 2022-01-17 13:34:43 INFO [Crawler.762.parsePageContext] currentContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b lastContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b 2022-01-17 13:34:43 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:43 INFO [Crawler.1221.saveDom] save to 20220117133410_com.tencent.wemeet.app/2_com.tencent.wemeet.app.GuestGuideActivity.tag=Button.depth=8.id=g3.text=加入会议.clicked.xml 2022-01-17 13:34:43 INFO [URIElementStore.75.saveResHash] save resHash to 2 2022-01-17 13:34:43 INFO [URIElementStore.106.saveResImg] save resImg 20220117133410_com.tencent.wemeet.app/2_com.tencent.wemeet.app.GuestGuideActivity.tag=Button.depth=8.id=g3.text=加入会议.clicked.png to 2 2022-01-17 13:34:43 INFO [URIElementStore.90.saveResDom] save resDom to 2 2022-01-17 13:34:43 INFO [TagLimitPlugin.65.afterElementAction] tagLimit[com.tencent.wemeet.app.GuestGuideActivity//android.widget.FrameLayout[@class='android.widget.FrameLayout']//android.widget.LinearLayout[@class='android.widget.LinearLayout']//android.widget.FrameLayout[@class='android.widget.FrameLayout']//android.widget.LinearLayout[@resource-id='com.tencent.wemeet.app:id/ar' and @class='android.widget.LinearLayout']//android.widget.FrameLayout[@resource-id='android:id/content' and @class='android.widget.FrameLayout']//android.view.ViewGroup[@resource-id='com.tencent.wemeet.app:id/rj' and @class='android.view.ViewGroup']//android.widget.Button[@resource-id='com.tencent.wemeet.app:id/g3' and @class='android.widget.Button']]=19 2022-01-17 13:34:43 INFO [Crawler.965.crawl] crawl use 2349 ms 2022-01-17 13:34:43 INFO [Crawler.973.crawl] crawl next 2022-01-17 13:34:43 INFO [Crawler.526.getAvailableElement] selected nodes size = 9 2022-01-17 13:34:43 INFO [Crawler.563.getAvailableElement] selectedElements - black elements size = 8 2022-01-17 13:34:43 INFO [Crawler.582.getAvailableElement] selectedElements - backButton size=8 2022-01-17 13:34:43 INFO [Crawler.590.getAvailableElement] selectedElements - clicked size=8 2022-01-17 13:34:43 INFO [Crawler.597.getAvailableElement] selectedElements - skiped fresh elements size=8 2022-01-17 13:34:43 INFO [Crawler.647.getAvailableElement] next element Some(com.tencent.wemeet.app.JoinActivity.tag=EditText.depth=10.id=pq.text=请输入会议号) 2022-01-17 13:34:43 INFO [TagLimitPlugin.48.fixElementAction] tagLimit[com.tencent.wemeet.app.JoinActivity//android.widget.FrameLayout[@class='android.widget.FrameLayout']//android.widget.LinearLayout[@class='android.widget.LinearLayout']//android.widget.FrameLayout[@class='android.widget.FrameLayout']//android.widget.LinearLayout[@resource-id='com.tencent.wemeet.app:id/ar' and @class='android.widget.LinearLayout']//android.widget.FrameLayout[@resource-id='android:id/content' and @class='android.widget.FrameLayout']//android.view.ViewGroup[@resource-id='com.tencent.wemeet.app:id/kt' and @class='android.view.ViewGroup']//android.widget.FrameLayout[@resource-id='com.tencent.wemeet.app:id/a4j' and @class='android.widget.FrameLayout']//android.view.ViewGroup[@resource-id='com.tencent.wemeet.app:id/oy' and @class='android.view.ViewGroup']//android.widget.EditText[@resource-id='com.tencent.wemeet.app:id/pq' and @class='android.widget.EditText']]=20 2022-01-17 13:34:43 INFO [Crawler.776.beforeElementAction] com.tencent.wemeet.app.JoinActivity.tag=EditText.depth=10.id=pq.text=请输入会议号 2022-01-17 13:34:43 INFO [Crawler.1063.doElementAction] current index = 3 2022-01-17 13:34:43 INFO [Crawler.1064.doElementAction] current xpath = //android.widget.FrameLayout[@class='android.widget.FrameLayout']//android.widget.LinearLayout[@class='android.widget.LinearLayout']//android.widget.FrameLayout[@class='android.widget.FrameLayout']//android.widget.LinearLayout[@resource-id='com.tencent.wemeet.app:id/ar' and @class='android.widget.LinearLayout']//android.widget.FrameLayout[@resource-id='android:id/content' and @class='android.widget.FrameLayout']//android.view.ViewGroup[@resource-id='com.tencent.wemeet.app:id/kt' and @class='android.view.ViewGroup']//android.widget.FrameLayout[@resource-id='com.tencent.wemeet.app:id/a4j' and @class='android.widget.FrameLayout']//android.view.ViewGroup[@resource-id='com.tencent.wemeet.app:id/oy' and @class='android.view.ViewGroup']//android.widget.EditText[@resource-id='com.tencent.wemeet.app:id/pq' and @text='请输入会议号' and @class='android.widget.EditText'] 2022-01-17 13:34:43 INFO [Crawler.1065.doElementAction] current action = click 2022-01-17 13:34:43 INFO [Crawler.1066.doElementAction] current element = com.tencent.wemeet.app.JoinActivity.tag=EditText.depth=10.id=pq.text=请输入会议号 2022-01-17 13:34:43 INFO [Crawler.1067.doElementAction] current url = com.tencent.wemeet.app.JoinActivity 2022-01-17 13:34:43 INFO [Crawler.1068.doElementAction] current tag path = //android.widget.FrameLayout[@class='android.widget.FrameLayout']//android.widget.LinearLayout[@class='android.widget.LinearLayout']//android.widget.FrameLayout[@class='android.widget.FrameLayout']//android.widget.LinearLayout[@resource-id='com.tencent.wemeet.app:id/ar' and @class='android.widget.LinearLayout']//android.widget.FrameLayout[@resource-id='android:id/content' and @class='android.widget.FrameLayout']//android.view.ViewGroup[@resource-id='com.tencent.wemeet.app:id/kt' and @class='android.view.ViewGroup']//android.widget.FrameLayout[@resource-id='com.tencent.wemeet.app:id/a4j' and @class='android.widget.FrameLayout']//android.view.ViewGroup[@resource-id='com.tencent.wemeet.app:id/oy' and @class='android.view.ViewGroup']//android.widget.EditText[@resource-id='com.tencent.wemeet.app:id/pq' and @class='android.widget.EditText'] 2022-01-17 13:34:43 INFO [Crawler.1069.doElementAction] current file name = com.tencent.wemeet.app.JoinActivity.tag=EditText.depth=10.id=pq.text=请输入会议号 2022-01-17 13:34:43 INFO [URIElementStore.67.saveReqHash] save reqHash to 3 2022-01-17 13:34:43 INFO [URIElementStore.83.saveReqDom] save reqDom to 3 2022-01-17 13:34:43 INFO [URIElementStore.97.saveReqImg] save reqImg 20220117133410_com.tencent.wemeet.app/3_com.tencent.wemeet.app.JoinActivity.tag=EditText.depth=10.id=pq.text=请输入会议号.click.png to 3 2022-01-17 13:34:43 INFO [Crawler.1194.saveElementScreenshot] draw element in 20220117133410_com.tencent.wemeet.app/3_com.tencent.wemeet.app.JoinActivity.tag=EditText.depth=10.id=pq.text=请输入会议号.click.png 2022-01-17 13:34:43 INFO [ScreenShot.45.clip] write png 20220117133410_com.tencent.wemeet.app/3_com.tencent.wemeet.app.JoinActivity.tag=EditText.depth=10.id=pq.text=请输入会议号.click.png 2022-01-17 13:34:43 INFO [ScreenShot.57.clip] ImageIO.write newImageName 20220117133410_com.tencent.wemeet.app/3_com.tencent.wemeet.app.JoinActivity.tag=EditText.depth=10.id=pq.text=请输入会议号.click.png 2022-01-17 13:34:43 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:34:43 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:43 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:43 INFO [Crawler.1128.doElementAction] need input click 2022-01-17 13:34:43 INFO [ReactWebDriver.36.findElement] find by uri element= com.tencent.wemeet.app.JoinActivity.tag=EditText.depth=10.id=pq.text=请输入会议号 2022-01-17 13:34:43 INFO [AppiumClient.190.findElements] findElementsByXPath //android.widget.FrameLayout[@class='android.widget.FrameLayout']//android.widget.LinearLayout[@class='android.widget.LinearLayout']//android.widget.FrameLayout[@class='android.widget.FrameLayout']//android.widget.LinearLayout[@resource-id='com.tencent.wemeet.app:id/ar' and @class='android.widget.LinearLayout']//android.widget.FrameLayout[@resource-id='android:id/content' and @class='android.widget.FrameLayout']//android.view.ViewGroup[@resource-id='com.tencent.wemeet.app:id/kt' and @class='android.view.ViewGroup']//android.widget.FrameLayout[@resource-id='com.tencent.wemeet.app:id/a4j' and @class='android.widget.FrameLayout']//android.view.ViewGroup[@resource-id='com.tencent.wemeet.app:id/oy' and @class='android.view.ViewGroup']//android.widget.EditText[@resource-id='com.tencent.wemeet.app:id/pq' and @text='请输入会议号' and @class='android.widget.EditText'] 2022-01-17 13:34:43 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:43 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@229481fb 2022-01-17 13:34:43 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:43 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@229481fb 2022-01-17 13:34:43 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:43 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@229481fb 2022-01-17 13:34:43 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@229481fb 2022-01-17 13:34:44 INFO [ReactWebDriver.43.findElement] find by xpath success 2022-01-17 13:34:44 INFO [Crawler.1147.$anonfun$doElementAction$3] click element 2022-01-17 13:34:44 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.JoinActivity 2022-01-17 13:34:44 INFO [Crawler.762.parsePageContext] currentContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b lastContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b 2022-01-17 13:34:44 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:44 INFO [LogicUtils$.83.asyncTask] use time 0.624 seconds name=action result=success 2022-01-17 13:34:44 INFO [Crawler.1177.doElementAction] afterAllRetry = 0 because of last action not equal to after 2022-01-17 13:34:44 INFO [Crawler.1181.doElementAction] sleep 1000 ms 2022-01-17 13:34:45 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:34:45 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:45 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:45 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:45 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@5297d7bc 2022-01-17 13:34:45 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:45 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@5297d7bc 2022-01-17 13:34:45 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:45 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@5297d7bc 2022-01-17 13:34:45 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@5297d7bc 2022-01-17 13:34:45 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.JoinActivity 2022-01-17 13:34:45 INFO [Crawler.762.parsePageContext] currentContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b lastContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b 2022-01-17 13:34:45 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:45 INFO [Crawler.801.afterElementAction] mark image exist 2022-01-17 13:34:45 INFO [Crawler.1235.saveScreen] start screenshot 2022-01-17 13:34:45 INFO [Crawler.1240.$anonfun$saveScreen$2] ui change screenshot again 2022-01-17 13:34:46 INFO [Crawler.1246.saveScreen] screenshot success 2022-01-17 13:34:46 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:46 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:46 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:46 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@6b4376e1 2022-01-17 13:34:46 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:46 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@6b4376e1 2022-01-17 13:34:46 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:46 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@6b4376e1 2022-01-17 13:34:46 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@6b4376e1 2022-01-17 13:34:46 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.JoinActivity 2022-01-17 13:34:46 INFO [Crawler.762.parsePageContext] currentContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b lastContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b 2022-01-17 13:34:46 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:46 INFO [Crawler.1221.saveDom] save to 20220117133410_com.tencent.wemeet.app/3_com.tencent.wemeet.app.JoinActivity.tag=EditText.depth=10.id=pq.text=请输入会议号.clicked.xml 2022-01-17 13:34:46 INFO [URIElementStore.75.saveResHash] save resHash to 3 2022-01-17 13:34:46 INFO [URIElementStore.106.saveResImg] save resImg 20220117133410_com.tencent.wemeet.app/3_com.tencent.wemeet.app.JoinActivity.tag=EditText.depth=10.id=pq.text=请输入会议号.clicked.png to 3 2022-01-17 13:34:46 INFO [URIElementStore.90.saveResDom] save resDom to 3 2022-01-17 13:34:46 INFO [TagLimitPlugin.65.afterElementAction] tagLimit[com.tencent.wemeet.app.JoinActivity//android.widget.FrameLayout[@class='android.widget.FrameLayout']//android.widget.LinearLayout[@class='android.widget.LinearLayout']//android.widget.FrameLayout[@class='android.widget.FrameLayout']//android.widget.LinearLayout[@resource-id='com.tencent.wemeet.app:id/ar' and @class='android.widget.LinearLayout']//android.widget.FrameLayout[@resource-id='android:id/content' and @class='android.widget.FrameLayout']//android.view.ViewGroup[@resource-id='com.tencent.wemeet.app:id/kt' and @class='android.view.ViewGroup']//android.widget.FrameLayout[@resource-id='com.tencent.wemeet.app:id/a4j' and @class='android.widget.FrameLayout']//android.view.ViewGroup[@resource-id='com.tencent.wemeet.app:id/oy' and @class='android.view.ViewGroup']//android.widget.EditText[@resource-id='com.tencent.wemeet.app:id/pq' and @class='android.widget.EditText']]=19 2022-01-17 13:34:46 INFO [Crawler.965.crawl] crawl use 3030 ms 2022-01-17 13:34:46 INFO [Crawler.973.crawl] crawl next 2022-01-17 13:34:46 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:34:46 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:46 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:46 INFO [Crawler.526.getAvailableElement] selected nodes size = 9 2022-01-17 13:34:46 INFO [Crawler.563.getAvailableElement] selectedElements - black elements size = 8 2022-01-17 13:34:46 ERROR [Crawler.223.crawlWithRetry] crawl not finish, return with exception 2022-01-17 13:34:46 ERROR [Crawler.224.crawlWithRetry] null 2022-01-17 13:34:46 ERROR [Crawler.225.crawlWithRetry] NullPointerException: 2022-01-17 13:34:46 ERROR [Crawler.226.crawlWithRetry] java.lang.NullPointerException 2022-01-17 13:34:46 ERROR [Crawler.227.$anonfun$crawlWithRetry$2] java.lang.NullPointerException 2022-01-17 13:34:46 ERROR [Crawler.227.$anonfun$crawlWithRetry$2] at com.ceshiren.appcrawler.driver.ReactWebDriver.getNodeListByKey(ReactWebDriver.scala:262) 2022-01-17 13:34:46 ERROR [Crawler.227.$anonfun$crawlWithRetry$2] at com.ceshiren.appcrawler.core.Crawler.getURIElementsByStep(Crawler.scala:869) 2022-01-17 13:34:46 ERROR [Crawler.227.$anonfun$crawlWithRetry$2] at com.ceshiren.appcrawler.core.Crawler.$anonfun$getAvailableElement$15(Crawler.scala:581) 2022-01-17 13:34:46 ERROR [Crawler.227.$anonfun$crawlWithRetry$2] at scala.collection.StrictOptimizedIterableOps.flatMap(StrictOptimizedIterableOps.scala:117) 2022-01-17 13:34:46 ERROR [Crawler.227.$anonfun$crawlWithRetry$2] at scala.collection.StrictOptimizedIterableOps.flatMap$(StrictOptimizedIterableOps.scala:104) 2022-01-17 13:34:46 ERROR [Crawler.227.$anonfun$crawlWithRetry$2] at scala.collection.mutable.ListBuffer.flatMap(ListBuffer.scala:39) 2022-01-17 13:34:46 ERROR [Crawler.227.$anonfun$crawlWithRetry$2] at com.ceshiren.appcrawler.core.Crawler.getAvailableElement(Crawler.scala:581) 2022-01-17 13:34:46 ERROR [Crawler.227.$anonfun$crawlWithRetry$2] at com.ceshiren.appcrawler.core.Crawler.crawl(Crawler.scala:1011) 2022-01-17 13:34:46 ERROR [Crawler.227.$anonfun$crawlWithRetry$2] at com.ceshiren.appcrawler.core.Crawler.$anonfun$crawlWithRetry$1(Crawler.scala:216) 2022-01-17 13:34:46 ERROR [Crawler.227.$anonfun$crawlWithRetry$2] at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.scala:18) 2022-01-17 13:34:46 ERROR [Crawler.227.$anonfun$crawlWithRetry$2] at scala.util.Try$.apply(Try.scala:210) 2022-01-17 13:34:46 ERROR [Crawler.227.$anonfun$crawlWithRetry$2] at com.ceshiren.appcrawler.core.Crawler.crawlWithRetry(Crawler.scala:216) 2022-01-17 13:34:46 ERROR [Crawler.227.$anonfun$crawlWithRetry$2] at com.ceshiren.appcrawler.core.Crawler.start(Crawler.scala:171) 2022-01-17 13:34:46 ERROR [Crawler.227.$anonfun$crawlWithRetry$2] at com.ceshiren.appcrawler.AppCrawler$.startCrawl(AppCrawler.scala:319) 2022-01-17 13:34:46 ERROR [Crawler.227.$anonfun$crawlWithRetry$2] at com.ceshiren.appcrawler.AppCrawler$.parseParams(AppCrawler.scala:286) 2022-01-17 13:34:46 ERROR [Crawler.227.$anonfun$crawlWithRetry$2] at com.ceshiren.appcrawler.AppCrawler$.main(AppCrawler.scala:73) 2022-01-17 13:34:46 ERROR [Crawler.227.$anonfun$crawlWithRetry$2] at com.ceshiren.appcrawler.AppCrawler.main(AppCrawler.scala) 2022-01-17 13:34:46 ERROR [Crawler.228.crawlWithRetry] create new session Exception in thread "main" java.lang.NullPointerException at com.ceshiren.appcrawler.driver.ReactWebDriver.getNodeListByKey(ReactWebDriver.scala:262) at com.ceshiren.appcrawler.core.Crawler.getURIElementsByStep(Crawler.scala:869) at com.ceshiren.appcrawler.core.Crawler.$anonfun$getAvailableElement$15(Crawler.scala:581) at scala.collection.StrictOptimizedIterableOps.flatMap(StrictOptimizedIterableOps.scala:117) at scala.collection.StrictOptimizedIterableOps.flatMap$(StrictOptimizedIterableOps.scala:104) at scala.collection.mutable.ListBuffer.flatMap(ListBuffer.scala:39) at com.ceshiren.appcrawler.core.Crawler.getAvailableElement(Crawler.scala:581) at com.ceshiren.appcrawler.core.Crawler.crawl(Crawler.scala:1011) at com.ceshiren.appcrawler.core.Crawler.$anonfun$crawlWithRetry$1(Crawler.scala:216) at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.scala:18) at scala.util.Try$.apply(Try.scala:210) at com.ceshiren.appcrawler.core.Crawler.crawlWithRetry(Crawler.scala:216) at com.ceshiren.appcrawler.core.Crawler.start(Crawler.scala:171) at com.ceshiren.appcrawler.AppCrawler$.startCrawl(AppCrawler.scala:319) at com.ceshiren.appcrawler.AppCrawler$.parseParams(AppCrawler.scala:286) at com.ceshiren.appcrawler.AppCrawler$.main(AppCrawler.scala:73) at com.ceshiren.appcrawler.AppCrawler.main(AppCrawler.scala) 2022-01-17 13:34:46 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:46 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@209a08b7 2022-01-17 13:34:46 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:46 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@209a08b7 2022-01-17 13:34:46 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:46 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@209a08b7 2022-01-17 13:34:46 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@209a08b7 2022-01-17 13:34:46 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.JoinActivity 2022-01-17 13:34:46 INFO [Crawler.762.parsePageContext] currentContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b lastContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b 2022-01-17 13:34:46 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:47 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:34:47 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:47 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:47 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:47 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@39df3435 2022-01-17 13:34:47 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:47 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@39df3435 2022-01-17 13:34:47 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:47 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@39df3435 2022-01-17 13:34:47 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@39df3435 2022-01-17 13:34:47 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.JoinActivity 2022-01-17 13:34:47 INFO [Crawler.762.parsePageContext] currentContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b lastContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b 2022-01-17 13:34:47 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:48 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:34:48 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:48 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:49 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:49 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@2059f202 2022-01-17 13:34:49 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:49 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@2059f202 2022-01-17 13:34:49 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:49 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@2059f202 2022-01-17 13:34:49 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@2059f202 2022-01-17 13:34:49 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.JoinActivity 2022-01-17 13:34:49 INFO [Crawler.762.parsePageContext] currentContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b lastContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b 2022-01-17 13:34:49 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:50 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:34:50 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:50 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:50 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:50 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@1e84d0df 2022-01-17 13:34:50 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:50 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@1e84d0df 2022-01-17 13:34:50 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:50 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@1e84d0df 2022-01-17 13:34:50 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@1e84d0df 2022-01-17 13:34:50 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.JoinActivity 2022-01-17 13:34:50 INFO [Crawler.762.parsePageContext] currentContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b lastContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b 2022-01-17 13:34:50 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:51 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:34:51 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:51 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:51 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:51 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@5c178c2d 2022-01-17 13:34:51 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:51 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@5c178c2d 2022-01-17 13:34:51 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:51 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@5c178c2d 2022-01-17 13:34:51 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@5c178c2d 2022-01-17 13:34:51 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.JoinActivity 2022-01-17 13:34:51 INFO [Crawler.762.parsePageContext] currentContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b lastContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b 2022-01-17 13:34:51 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:52 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:34:52 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:52 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:52 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:52 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@d902afa 2022-01-17 13:34:52 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:52 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@d902afa 2022-01-17 13:34:52 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:52 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@d902afa 2022-01-17 13:34:52 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@d902afa 2022-01-17 13:34:53 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.JoinActivity 2022-01-17 13:34:53 INFO [Crawler.762.parsePageContext] currentContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b lastContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b 2022-01-17 13:34:53 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:54 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:34:54 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:54 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:54 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:54 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@13351b01 2022-01-17 13:34:54 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:54 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@13351b01 2022-01-17 13:34:54 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:54 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@13351b01 2022-01-17 13:34:54 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@13351b01 2022-01-17 13:34:54 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.JoinActivity 2022-01-17 13:34:54 INFO [Crawler.762.parsePageContext] currentContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b lastContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b 2022-01-17 13:34:54 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:55 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:34:55 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:55 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:55 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:55 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@4a08f82b 2022-01-17 13:34:55 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:55 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@4a08f82b 2022-01-17 13:34:55 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:55 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@4a08f82b 2022-01-17 13:34:55 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@4a08f82b 2022-01-17 13:34:55 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.JoinActivity 2022-01-17 13:34:55 INFO [Crawler.762.parsePageContext] currentContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b lastContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b 2022-01-17 13:34:55 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:56 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:34:56 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:56 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:56 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:56 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@34600def 2022-01-17 13:34:56 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:56 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@34600def 2022-01-17 13:34:56 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:56 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@34600def 2022-01-17 13:34:56 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@34600def 2022-01-17 13:34:56 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.JoinActivity 2022-01-17 13:34:56 INFO [Crawler.762.parsePageContext] currentContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b lastContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b 2022-01-17 13:34:56 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:57 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:34:57 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:57 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:57 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:57 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@638a7843 2022-01-17 13:34:57 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:57 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@638a7843 2022-01-17 13:34:57 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:57 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@638a7843 2022-01-17 13:34:57 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@638a7843 2022-01-17 13:34:58 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.JoinActivity 2022-01-17 13:34:58 INFO [Crawler.762.parsePageContext] currentContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b lastContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b 2022-01-17 13:34:58 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:34:59 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:34:59 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:34:59 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:34:59 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:34:59 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@6d5759f0 2022-01-17 13:34:59 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:34:59 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@6d5759f0 2022-01-17 13:34:59 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:34:59 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@6d5759f0 2022-01-17 13:34:59 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@6d5759f0 2022-01-17 13:34:59 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.JoinActivity 2022-01-17 13:34:59 INFO [Crawler.762.parsePageContext] currentContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b lastContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b 2022-01-17 13:34:59 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:35:00 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:35:00 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:35:00 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:35:00 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:35:00 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@efda588 2022-01-17 13:35:00 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:35:00 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@efda588 2022-01-17 13:35:00 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:35:00 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@efda588 2022-01-17 13:35:00 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@efda588 2022-01-17 13:35:00 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.JoinActivity 2022-01-17 13:35:00 INFO [Crawler.762.parsePageContext] currentContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b lastContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b 2022-01-17 13:35:00 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:35:01 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:35:01 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:35:01 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:35:01 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:35:01 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@41b60802 2022-01-17 13:35:01 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:35:01 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@41b60802 2022-01-17 13:35:01 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:35:01 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@41b60802 2022-01-17 13:35:01 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@41b60802 2022-01-17 13:35:02 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.JoinActivity 2022-01-17 13:35:02 INFO [Crawler.762.parsePageContext] currentContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b lastContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b 2022-01-17 13:35:02 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:35:03 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:35:03 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:35:03 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:35:03 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:35:03 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@1a2b9750 2022-01-17 13:35:03 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:35:03 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@1a2b9750 2022-01-17 13:35:03 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:35:03 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@1a2b9750 2022-01-17 13:35:03 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@1a2b9750 2022-01-17 13:35:03 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.JoinActivity 2022-01-17 13:35:03 INFO [Crawler.762.parsePageContext] currentContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b lastContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b 2022-01-17 13:35:03 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:35:04 INFO [Crawler.186.$anonfun$waitAppLoaded$1] wait for app loaded 2022-01-17 13:35:04 INFO [Crawler.702.refreshPage] refresh page 2022-01-17 13:35:04 INFO [ReactWebDriver.88.getPageSourceWithRetry] start to get page source from appium 2022-01-17 13:35:04 INFO [ReactWebDriver.111.$anonfun$getPageSourceWithRetry$1] xml format 2022-01-17 13:35:04 INFO [Crawler.707.refreshPage] xxxxxxxxxxxxxxxxxxx:com.ceshiren.appcrawler.model.PageSource@63cd79b6 2022-01-17 13:35:04 INFO [Crawler.724.parsePageContext] appName = com.tencent.wemeet.app 2022-01-17 13:35:04 INFO [Crawler.364.getUri] sdjkasdgkjasdgjhasdjhasgdhjad1com.ceshiren.appcrawler.model.PageSource@63cd79b6 2022-01-17 13:35:04 INFO [Crawler.376.getUri] defineUrl= 2022-01-17 13:35:04 INFO [Crawler.382.getUri] sdjkasdgkjasdgjhasdjhasgdhjad2com.ceshiren.appcrawler.model.PageSource@63cd79b6 2022-01-17 13:35:04 INFO [Crawler.389.getUri] sdjkasdgkjasdgjhasdjhasgdhjad4com.ceshiren.appcrawler.model.PageSource@63cd79b6 Disconnected from the target VM, address: '127.0.0.1:65096', transport: 'socket' 2022-01-17 13:35:04 INFO [Crawler.729.parsePageContext] url=com.tencent.wemeet.app.JoinActivity 2022-01-17 13:35:04 INFO [Crawler.762.parsePageContext] currentContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b lastContentHash=9b0969d5ea1d9a30dde979ea3ff15f9b 2022-01-17 13:35:04 INFO [Crawler.766.parsePageContext] ui not change 2022-01-17 13:35:04 INFO [Crawler.1306.stop] ctrl c interval = 0 2022-01-17 13:35:04 INFO [Crawler.1206.saveLog] save log to 20220117133410_com.tencent.wemeet.app/elements.yml 2022-01-17 13:35:04 INFO [ReportPlugin.78.generateReport] reportPath=H:\框架源码\AppCrawler\20220117133410_com.tencent.wemeet.app 2022-01-17 13:35:04 INFO [ScalaTestRuntime.15.genTestCase] save testcase 2022-01-17 13:35:04 INFO [ReportFactory$.33.initReportPath] reportPath=H:\框架源码\AppCrawler\20220117133410_com.tencent.wemeet.app 2022-01-17 13:35:04 INFO [ReportFactory$.35.initReportPath] testcaseDir=H:\框架源码\AppCrawler\20220117133410_com.tencent.wemeet.app/tmp/ 2022-01-17 13:35:04 INFO [ScalaTestRuntime.22.$anonfun$genTestCase$2] gen testcase class com.tencent.wemeet.app.JoinActivity 2022-01-17 13:35:04 INFO [ScalaTestRuntime.22.$anonfun$genTestCase$2] gen testcase class com.tencent.wemeet.app.GuestGuideActivity 2022-01-17 13:35:04 INFO [ScalaTestRuntime.22.$anonfun$genTestCase$2] gen testcase class Steps 2022-01-17 13:35:04 INFO [ScalaTestRuntime.59.runTestCase] run -R H:\框架源码\AppCrawler\20220117133410_com.tencent.wemeet.app/tmp/ -oF -u H:\框架源码\AppCrawler\20220117133410_com.tencent.wemeet.app -h H:\框架源码\AppCrawler\20220117133410_com.tencent.wemeet.app Discovery starting. 2022-01-17 13:35:05 INFO [ReportFactory$.78.getSelected] only show clicked elements 2022-01-17 13:35:05 INFO [ReportFactory$.78.getSelected] only show clicked elements 2022-01-17 13:35:05 INFO [ReportFactory$.78.getSelected] only show clicked elements Discovery completed in 22 milliseconds. Run starting. Expected test count is: 4 Steps: - clickedIndex=1 action=CLICKED xpath=//android.widget.FrameLayout[@class='android.widget.FrameLayout'] +

after clicked

com.tencent.wemeet.app.GuestGuideActivity: - clickedIndex=0 action=CLICKED xpath=//android.widget.FrameLayout[@class='android.widget.FrameLayout'] +

after clicked

- clickedIndex=2 action=CLICKED xpath=//android.widget.FrameLayout[@class='android.widget.FrameLayout']//android.widget.LinearLayout[@class='android.widget.LinearLayout']//android.widget.FrameLayout[@class='android.widget.FrameLayout']//android.widget.LinearLayout[@resource-id='com.tencent.wemeet.app:id/ar' and @class='android.widget.LinearLayout']//android.widget.FrameLayout[@resource-id='android:id/content' and @class='android.widget.FrameLayout']//android.view.ViewGroup[@resource-id='com.tencent.wemeet.app:id/rj' and @class='android.view.ViewGroup']//android.widget.Button[@resource-id='com.tencent.wemeet.app:id/g3' and @text='加入会议' and @class='android.widget.Button'] +

after clicked

com.tencent.wemeet.app.JoinActivity: - clickedIndex=3 action=CLICKED xpath=//android.widget.FrameLayout[@class='android.widget.FrameLayout']//android.widget.LinearLayout[@class='android.widget.LinearLayout']//android.widget.FrameLayout[@class='android.widget.FrameLayout']//android.widget.LinearLayout[@resource-id='com.tencent.wemeet.app:id/ar' and @class='android.widget.LinearLayout']//android.widget.FrameLayout[@resource-id='android:id/content' and @class='android.widget.FrameLayout']//android.view.ViewGroup[@resource-id='com.tencent.wemeet.app:id/kt' and @class='android.view.ViewGroup']//android.widget.FrameLayout[@resource-id='com.tencent.wemeet.app:id/a4j' and @class='android.widget.FrameLayout']//android.view.ViewGroup[@resource-id='com.tencent.wemeet.app:id/oy' and @class='android.view.ViewGroup']//android.widget.EditText[@resource-id='com.tencent.wemeet.app:id/pq' and @text='请输入会议号' and @class='android.widget.EditText'] +

after clicked

Run completed in 37 milliseconds. Total number of tests run: 4 Suites: completed 4, aborted 0 Tests: succeeded 4, failed 0, canceled 0, ignored 0, pending 0 All tests passed. 2022-01-17 13:35:05 INFO [FreeMind.18.stop] genereate freemind file freemind.mm 2022-01-17 13:35:05 INFO [Crawler.1316.stop] generate report finish 2022-01-17 13:35:05 INFO [Crawler.1317.stop] report in 20220117133410_com.tencent.wemeet.app Process finished with exit code 0