Selenium webdriver Máscara de CNPJ

Boa Tarde!

Estou criando uma ferramenta de automação para realizar vários tipos de testes e validações em campos de fomulários(Cadastro).

Primeiro criei um random de CNPJ, para gerar automaticamente vários valores e inserir no campo apropriado.
Porém após Gerar o CNPJ na hora de inserir no Campo, a formatação não é correta:“58.103.000/1735-72” está fomatação não é válida o correto seria 57.258.103/0001-73

Este é o random para Gerar o CNPJ
public String gerarCnpj() {
int n = 9;
int n1 = gera_random(n);
int n2 = gera_random(n);
int n3 = gera_random(n);
int n4 = gera_random(n);
int n5 = gera_random(n);
int n6 = gera_random(n);
int n7 = gera_random(n);
int n8 = gera_random(n);
int n9 = 0;// gera_random(n);
int n10 = 0;// gera_random(n);
int n11 = 0;// gera_random(n);
int n12 = 1;// gera_random(n);
long d1 = n12 * 2 + n11 * 3 + n10 * 4 + n9 * 5 + n8 * 6 + n7 * 7 + n6 * 8 + n5 * 9 + n4 * 2 + n3 * 3 + n2 * 4 + n1 * 5;
d1 = 11 - (mod(d1, 11));
if (d1 >= 10)
d1 = 0;
long d2 = d1 * 2 + n12 * 3 + n11 * 4 + n10 * 5 + n9 * 6 + n8 * 7 + n7 * 8 + n6 * 9 + n5 * 2 + n4 * 3 + n3 * 4 + n2 * 5 + n1 * 6;
d2 = 11 - (mod(d2, 11));
if (d2 >= 10)
d2 = 0;
licenca.setCnpjCliente("" + n1 + n2 + “.” + n3 + n4 + n5 + “.” + n6 + n7 + n8 + “/” + n9 + n10 + n11 + n12 + “-” + d1 + d2);
licenca.setCnpjLicenciador("" + n1 + n2 + “.” + n3 + n4 + n5 + “.” + n6 + n7 + n8 + “/” + n9 + n10 + n11 + n12 + “-” + d1 + d2);
licenciador.setCnpjValidaUrl("" + n1 + n2 + “.” + n3 + n4 + n5 + “.” + n6 + n7 + n8 + “/” + n9 + n10 + n11 + n12 + “-” + d1 + d2);
return “” + n1 + n2 + “.” + n3 + n4 + n5 + “.” + n6 + n7 + n8 + “/” + n9 + n10 + n11 + n12 + “-” + d1 + d2;
}

public Integer gera_random(int numero) {
	int random = (int) Math.round(Math.random() * numero);
	return random;
}

public long mod(long dividendo, int divisor) {
	return Math.round(dividendo - (Math.floor(dividendo / divisor) * divisor));
}

Este é o método para inserir o CNPJ no campo:
public void atribuirLicenciador(Licenciador licenciador) {
try {
if (licenciador.getCnpj() != null && !licenciador.getCnpj().equals("")) {
WebElement cnpjLicencor = (new WebDriverWait(driver, 20)).until(ExpectedConditions.visibilityOfElementLocated(By.id(“cnpjLicensor”)));
cnpjLicencor.sendKeys(licenciador.getCnpj());
Thread.sleep(500);
}

Alguem já teve um problema parecido com isto?
Obrigada!!

Boa tarde,

Creio que n1 , n2, … n são do tipo inteiro.
Então quando você esta fazendo: “” + n1 + n2 + “.” primeiramente voce estaria somando n1 + n2.
transforme tudo em String: n1 + “” + n2 + “.” + n3 + “” + n4 + “” + n5 + “.” + n6 + “” + n7 + “” + n8 + “/” + n9 + “” + n10 + “” + n11 + “” + n12 + “-” + d1 + “” + d2;

Obrigada, vou tentar.

Boa Tarde!

Criei um método para transforma em string e o webdriver selenium atribuir ao campo, porém ainda a formatação do cnpj não é correta, assim o campo que possui máscara não aceita.

Então criei outro método para atribuir um cnpj fixo e na formatação correta, mesmo assim, no momento em que o webdriver insere o cnpj a formatação é incorreta.

public void atribuirLicenciador(Licenciador licenciador) {
try {
if (licenciador.getCnpj() != null && !licenciador.getCnpj().equals("")) {WebElement cnpjLicencor = (new WebDriverWait(driver, 20)).until(ExpectedConditions.visibilityOfElementLocated(By.id(“cnpjLicensor”)));
cnpjLicencor.sendKeys(“10.522.272/0001-05”);
Thread.sleep(500);
}

veja como ele insere no campo: 20.001.051/0522-27

Outro detalhe, este erro ocorre em máquinas diferentes.