Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

Unable to run the test parallelly on 2 devices through testng (appium java) > code runs individually << failed due to unable to locate the element

Aberta
#1,761 2 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 5 dias

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
4/5
Tempo estimado
3-5 dias
Facilidade para iniciantes
25/100
Tipo de issue
Bug
Clareza
Precisa de esclarecimento
Status de atividade
Estagnada
Stack de tecnologia
android, java

Direção de pesquisa

Comece pelo XML do TestNG e por tests.Muti_LoginTC2; depois, inspecione Base2.startServer e os pontos de entrada de SplashPage, GetVerificationCodePage e OTPVerificationPage. Reproduza login1 e login2 em paralelo nos dois dispositivos listados e capture a busca de elemento que falha; considera-se concluído quando ambos os fluxos localizam seus elementos e terminam sem interferência.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

testng XML :

Test :
package tests;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.lang.reflect.Method;
import java.util.Properties;
import java.util.concurrent.TimeUnit;

import org.testng.Assert;
import org.testng.annotations.AfterTest;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;

//import Practice.BluesecureTC.Base1;
import io.appium.java_client.android.AndroidDriver;
import io.appium.java_client.android.AndroidElement;
import pages.GetVerificationCodePage;
import pages.InviteUserPage;
import pages.OTPVerificationPage;
import pages.SplashPage;
import utils.Base;
import utils.Base2;

public class Muti_LoginTC2 extends Base2{

@BeforeTest()
public void killAllnodes() throws IOException, InterruptedException {  
	Runtime.getRuntime().exec("taskkill /F /IM node.exe");
	Thread.sleep(3000);
}

// @AfterTest
// public void stop()
// {
// stop_service();
// }
//

@Test 
public void login1() throws IOException, InterruptedException
{
	
	
	AndroidDriver<AndroidElement> driver1 = startServer("8244","Bluesecure","RZ8R915W2KW");
	driver1.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
	System.out.println("Thread one is" +Thread.currentThread().getId());
	
	SplashPage s1=new SplashPage(driver1);
	
	GetVerificationCodePage verify = new GetVerificationCodePage(driver1);
	OTPVerificationPage otp = new OTPVerificationPage(driver1);
	
	s1.naviagte();

// String expected="android.widget.ScrollView";
// String actual =

	verify.allow_permissions();
	verify.login("8755875532");
	otp.verifyOtp();
	
}

@Test
public void login2() throws IOException, InterruptedException
{
	AndroidDriver<AndroidElement> driver2 = startServer("8241","Bluesecure","HA4L6TGQGET4CMDI");
	//AndroidDriver<AndroidElement> driver = capabilities("Bluesecure");
	driver2.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
	System.out.println("Thread two  is" +Thread.currentThread().getId());
	
	SplashPage s2=new SplashPage(driver2);
	
	
	GetVerificationCodePage verify2 = new GetVerificationCodePage(driver2);
	OTPVerificationPage otp2 = new OTPVerificationPage(driver2);
	
	s2.naviagte();

// String expected="android.widget.ScrollView";
// String actual =

	verify2.allow_permissions();
	verify2.login("9544696100");
	otp2.verifyOtp();

//
}

// @Test
// public void login3() throws IOException, InterruptedException
// {
// AndroidDriver driver = startServer("8997","Bluesecure","RZ8R915W2KW");
// //AndroidDriver driver = capabilities("Bluesecure");
// driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
//
//
// SplashPage s1=new SplashPage(driver);
//
// GetVerificationCodePage verify = new GetVerificationCodePage(driver);
// OTPVerificationPage otp = new OTPVerificationPage(driver);
//
// s1.naviagte();
//// String expected="android.widget.ScrollView";
//// String actual =
//
// verify.allow_permissions();
// verify.login("9544696100");
// otp.verifyOtp();
////
// }
}

Linguagem predominante
Java
Estrelas
1.3k
Forks
755
Merge médio
5d 14h
PRs com merge (30d)
8

Preparar o ambiente

  • Sem Dockerfile nem arquivo Docker Compose
  • Tem um modelo de pull request
  • Sem guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de appium/java-client

Todas as issues de appium/java-client

Issues semelhantes

Mais issues de Java

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.