当我尝试在appium中运行我的测试时,我的第二个测试未运行。它的节目“无法创建新会话”。我的第二个测试函数的名字是BAddon,而第二测试操作的错误时,抛出我不能在JUnit中运行我的第二个测试,它显示“会话未创建”
这里是我的代码
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class FirstAutomate {
private WebDriver driver;
@Before
public void setup() throws Exception {
//File app = new File("C:\\sdk\\platform-tools\\Myapp.apk");
DesiredCapabilities capabilities = new DesiredCapabilities();
//capabilities.setCapability("BROWSER_NAME", "Android");
capabilities.setCapability("VERSION", "5.0.2");
capabilities.setCapability("deviceName","G3 Beat");
capabilities.setCapability("appPackage", "com.myapp.app");
capabilities.setCapability("appActivity","com.myapp.app.screens.prehomescreens.activities.SplashScreen");
capabilities.setCapability("platformName","Android");
capabilities.setCapability(MobileCapabilityType.PLATFORM_NAME,MobilePlatform.ANDROID);
//capabilities.setCapability("app", app.getAbsolutePath());
try{
driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
}catch(MalformedURLException e)
{
e.printStackTrace();
}
// TODO Auto-generated method stub
}
@Test
public void AppLogin() throws InterruptedException {
//Tapping login button
Thread.sleep(5000);
driver.findElement(By.id("loginButtonTextView")).click();
//User inputs mail id
driver.findElement(By.id("emailIdEditText")).sendKeys("[email protected]");
//User login button click
driver.findElement(By.id("loginBtnRCB")).click();
//User inputs OTP
driver.findElement(By.id("pinPadContainer")).sendKeys("123456");
WebElement loginBtn = driver.findElement(By.id("nextBtnRCB"));
if(loginBtn.isDisplayed())
{
loginBtn.click();
}else
{
System.out.println("Button is not present");
}
Thread.sleep(15000);
}
@Test
public void BAddOn() throws InterruptedException{
//Thread.sleep(10000);
WebElement AddonBtn = driver.findElement(By.id("studentStatusButton"));
if(AddonBtn.isDisplayed())
{
AddonBtn.click();
}else{
System.out.println("AddOnBtn is not visible");
}
}
}
Ya BeforeClass为我工作,谢谢:-) –
当然,这个问题的作者选择了答案,但在这种情况下,我不同意这是三个人中最好的答案。 此特定解决方案假定第一个测试的结束状态与第二个测试的开始状态相匹配,这会增加未来测试的风险。如果你的第一个测试在中间失败,那么第二个测试也会失败。 您正在启动测试会话,而不是服务器,因此我不同意这是答案。 –