我正在使用Vue作为FE,Springboot作为BE,Selenium和Appium作为测试框架来构建自动化测试工具。主要目的是将Web和android测试集成在一个webapp中。
问题在于,在我添加Appium之前,与网络相关的所有功能都可以正常工作。 当我添加appium依赖项并尝试创建Android驱动程序时,控制台会不断向我发送如下错误:
java.lang.ClassNotFoundException: org.openqa.selenium.remote.BeanToJsonConverter
这是我的控制器的代码:
@Autowired
private DriverService driverService;
@PostMapping("/start")
@ResponseBody
public List<ReportStep> start(@RequestBody Step[] steps) throws MalformedURLException {
WebDriver webDriver;
AndroidDriver<AndroidElement> androidDriver = null;
webDriver = new ChromeDriver();
DesiredCapabilities cap = new DesiredCapabilities();
cap.setCapability("automationName", "Appium");
cap.setCapability("deviceName", "192.168.171.101:5555");
cap.setCapability("platformName", "Android");
cap.setCapability("platformVersion", "8.0");
cap.setCapability("appPackage", "com.tencent.mm");
cap.setCapability("appActivity", ".ui.LauncherUI");
cap.setCapability("unicodeKeyboard", "True");
cap.setCapability("resetKeyboard", "True");
cap.setCapability("noReset", "true");
cap.setCapability("newCommandTimeout", "60");
androidDriver = new AndroidDriver<>(new URL("http://127.0.0.1:4723/wd/hub"), cap);
List<ReportStep> reportStepList = driverService.runSteps(webDriver,androidDriver,steps);
return reportStepList;
}
控制台告诉我
androidDriver = new AndroidDriver<>(new URL("http://127.0.0.1:4723/wd/hub"), cap);
无法初始化。
如果我将这些代码复制到一个普通的Java项目中,它将很好地工作,所以我想这与spring框架和bean配置有关。
有没有人可以解释发生了什么以及如何解决?