diff --git a/pom.xml b/pom.xml index 439ad288..f57454e7 100644 --- a/pom.xml +++ b/pom.xml @@ -6,13 +6,19 @@ com.ceshiren.appcrawler appcrawler - 2.7.2 + 2.7.3 appcrawler - app crawler for automation testing, 全平台遍历测试工具,霍格沃兹测试开发学社出品,交流论坛 https://ceshiren.com/c/opensource/appcrawler + + ------------------------------------------------- + appcrawler v2.7.3 全平台自动遍历测试工具 + Q&A: https://ceshiren.com/c/opensource/appcrawler + author: 思寒 seveniruby@霍格沃兹测试开发学社 + ------------------------------------------------- + UTF-8 - 1.8 + 8 1.3.1 1.9.2 2.15.1 @@ -390,8 +396,8 @@ maven-compiler-plugin 3.8.1 - 1.8 - 1.8 + ${java.version} + ${java.version} diff --git a/src/main/scala/com/ceshiren/appcrawler/Banner.scala b/src/main/scala/com/ceshiren/appcrawler/Banner.scala index 89129877..1ffc6d6e 100644 --- a/src/main/scala/com/ceshiren/appcrawler/Banner.scala +++ b/src/main/scala/com/ceshiren/appcrawler/Banner.scala @@ -4,7 +4,7 @@ object Banner { val banner = """ |------------------------------------------------- - |appcrawler v2.7.2 全平台自动遍历测试工具 + |appcrawler v2.7.3 全平台自动遍历测试工具 |Q&A: https://ceshiren.com/c/opensource/appcrawler |author: 思寒 seveniruby@霍格沃兹测试开发学社 |------------------------------------------------- diff --git a/src/main/scala/com/ceshiren/appcrawler/core/Crawler.scala b/src/main/scala/com/ceshiren/appcrawler/core/Crawler.scala index 4b4eeaa9..f12ebd0b 100644 --- a/src/main/scala/com/ceshiren/appcrawler/core/Crawler.scala +++ b/src/main/scala/com/ceshiren/appcrawler/core/Crawler.scala @@ -307,18 +307,16 @@ class Crawler { //todo: 主要做遍历测试和异常测试. 所以暂不使用selendroid log.info(automationName) val driver=automationName match { - case "selenium" => { + case "selenium" => new SeleniumDriver(conf.capability) - } //todo: 以后使用restful接口支持atx和macaca /* case "macaca" => { log.info("use macaca") driver = new MacacaDriver(url, conf.capability) }*/ - case "adb" => { + case "adb" => log.info("user adb") new AdbDriver(conf.capability) - } //todo: 把androidDriver与seleniumdriver独立 @@ -335,25 +333,21 @@ class Crawler { } }*/ - case "uiautomator2server" => { + case "uiautomator2server" => log.info("use uiautomator2server") new UIAutomator2ServerDriver(conf.capability) - } - case appium if appium==null || appium.isEmpty || appium.toLowerCase.equals("appium") => { - log.info("use AppiumClient") - log.info(conf.capability) - //fixed: appium 6.0.0 has bug with okhttp - //System.setProperty("webdriver.http.factory", "apache") - new AppiumClient(conf.capability) - } - case className => { + case className if className.contains(".") => log.info(s"use ${className}") val clazz=Class.forName(className) log.info(clazz) val instance=clazz.getConstructor(classOf[immutable.Map[String, Any]]).newInstance(conf.capability).asInstanceOf[ReactWebDriver] log.info(instance) instance - } + case _ => + log.info("use AppiumClient") + //fixed: appium 6.0.0 has bug with okhttp + //System.setProperty("webdriver.http.factory", "apache") + new AppiumClient(conf.capability) } log.info(driver) driver @@ -1074,7 +1068,8 @@ class Crawler { } case this.backAppAction => { log.info("backApp") - driver.launchApp() +// driver.launchApp() + driver.backApp() } case this.afterAllAction => { if (conf.afterAll != null) { diff --git a/src/main/scala/com/ceshiren/appcrawler/core/CrawlerConf.scala b/src/main/scala/com/ceshiren/appcrawler/core/CrawlerConf.scala index dac6eb68..d2092d68 100644 --- a/src/main/scala/com/ceshiren/appcrawler/core/CrawlerConf.scala +++ b/src/main/scala/com/ceshiren/appcrawler/core/CrawlerConf.scala @@ -219,7 +219,7 @@ class CrawlerConf { } - def toYaml: String = { + def toYaml(): String = { val mapper = new ObjectMapper(new YAMLFactory()) mapper.registerModule(DefaultScalaModule) mapper.writerWithDefaultPrettyPrinter().writeValueAsString(this) diff --git a/src/main/scala/com/ceshiren/appcrawler/driver/ReactWebDriver.scala b/src/main/scala/com/ceshiren/appcrawler/driver/ReactWebDriver.scala index cc6f2de2..74e882b7 100644 --- a/src/main/scala/com/ceshiren/appcrawler/driver/ReactWebDriver.scala +++ b/src/main/scala/com/ceshiren/appcrawler/driver/ReactWebDriver.scala @@ -72,7 +72,7 @@ abstract class ReactWebDriver { def launchApp(): Unit - def getPageSource: String + def getPageSource(): String //todo: 有的时候会出现极少内容的page source