我必须使用appium java在android应用程序中执行登录活动。我的应用程序正在打开,但未发生登录,并且在appium服务器中出现以下错误。
[AndroidDriver]不清除生成的文件。如果需要,添加clearSystemFiles
功能。
实际结果:Android应用程序正在打开,但未执行登录活动,并显示以下错误:
Appium服务器出现类似“ [AndroidDriver]的错误,不清除生成的文件。如果需要,添加clearSystemFiles
功能。”
预期结果:一旦打开应用程序,Appium服务器应该不会出错并且登录活动也应该执行
package Automation;
import io.appium.java_client.AppiumDriver;
import io.appium.java_client.android.AndroidDriver;
import io.appium.java_client.remote.MobileCapabilityType;
import org.openqa.selenium.By;
import org.openqa.selenium.WebElement;
import java.net.URL;
import org.openqa.selenium.remote.DesiredCapabilities;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;
public class AppiumTest2 {
AppiumDriver driver;
public void setup() throws Exception {
DesiredCapabilities Capabilities = new DesiredCapabilities();
Capabilities.setCapability("deviceName", "codeblaze");
Capabilities.setCapability("platforVersion", "7.0");
Capabilities.setCapability("platformName", "Adnroid");
Capabilities.setCapability("appPackage", "package name");
Capabilities.setCapability("appActivity", "activity name");
driver = new AndroidDriver(new URL("http://0.0.0.0:4723/wd/hub"), Capabilities);
}
public void tearDown() throws Exception {
driver.quit();
}
public void LogInWithInvalidEmail() {
WebElement emailTextField = (new WebDriverWait(driver,60)).until(ExpectedConditions.presenceOfElementLocated(By.id("etusername")));
emailTextField.sendKeys("Invalid Email");
WebElement passwordTextField = driver.findElement(By.id("etpassword"));
passwordTextField.sendKeys("Random Password");
WebElement loginButton = driver.findElement(By.id("lllogin"));
loginButton.click();
}
}
Appium服务器出现类似“ [AndroidDriver]的错误,不清除生成的文件。如果需要,添加clearSystemFiles
功能。”
预期结果:一旦打开应用程序,Appium服务器应该不会出错并且登录活动也应该执行
答案 0 :(得分:0)
应为as simple as:
Capabilities.setCapability(io.appium.java_client.remote.MobileCapabilityType.CLEAR_SYSTEM_FILES,true);
另一个问题可能与platformName
capability中的错字有关,应该是Android
,而不是Adnroid
在Selenium和/或Appium测试中最好坚持使用Page Object Model设计模式,这将使您可以将UI表示形式与测试逻辑分开。
如果上述提示无济于事-请考虑重新启动设备/模拟器。