Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Caso de teste interrompido após falha de verificação. #432

Open
Viveiros opened this issue Sep 26, 2016 · 7 comments
Open

Caso de teste interrompido após falha de verificação. #432

Viveiros opened this issue Sep 26, 2016 · 7 comments

Comments

@Viveiros
Copy link


Quando clico em "Lista de Trabalhadores" referente a "789.356.369-91"
Dado que estou na tela "Remunerações Mensais"
Então aguardo "3000" milessegundos
Então será exibido na "Rubrica eSocial1000" o valor "870,97" (FAILED)
(br.gov.frameworkdemoiselle.behave.exception.BehaveException: Elemento [Rubrica eSocial1000] não encontrado na tela [Remunerações Mensais])
11:09:49,178 INFO (pool-1-thread-1) [ScreenShootingMaker]: Screenshot [https://www.esocial.teste.serpro/portalweb-automatizado-001/FolhaPagamento/Remuneracao?idContrato=7548&competencia=201510] salvo em [/home/02731087609/workspace/esocial-testes-automatizados/target/jbehave/view/screenshots/failed-scenario-a780cbef-0061-44e9-9d9e-25ad7874d1f0.png] com [328.761] bytes
Então será exibido na "Rubrica eSocial1910" o valor "1.000,00" (NOT PERFORMED)
Então será exibido na "Rubrica eSocial1920" o valor "333,33" (NOT PERFORMED)

Observem que após tentar verificar o valor "870,97" no campo "Rubrica eSocial1000" o caso de teste é interrompido, porém poderia existir a continuidade dos passos, somente um valor não foi verificado com corretude mas existem outras verificações a serem feitas.
Sei que existe uma diferença entre o assert e o verify no Webdriver o nosso framework poderia diferenciar também as duas ações.
Quando quiséssemos que os passos terminassem após uma verificação usaríamos o assert. Caso existe a necessidade da verificação de valor e não interromper os passos usamos o verify.

@Viveiros
Copy link
Author

@Then(value="verifico {no|na} \"$elementName\" o valor \"$text\"", priority=10)
public void verifytextVisibleInElement(String elementName, String text) {

    Element element = (Element) runner.getElement(currentPageName, elementName);
    text = DataProviderUtil.replaceValue(text);
    WebDriver driver = (WebDriver) runner.getDriver();      
    driver.manage().timeouts().implicitlyWait(0, TimeUnit.MILLISECONDS);
    String textAux = element.getText();
    try{
        Assert.assertEquals(text, textAux);
     } catch (ComparisonFailure e) {
         logger.error("Texto esperado " + text +" texto encontrado " + textAux);
     }
}

@juliancesar juliancesar added this to the Releases Futuras milestone Oct 5, 2016
@juliancesar
Copy link
Contributor

@Viveiros, acredito que podemos avançar nesta questão.

Eu entendi a sua colocalção, mas na minha visão acredito que se o teste não der erro ele será "apenas" uma linha em um log, que normalmente possui milhares de linhas! Você acredita que se se "abafarmos" o erro a verificação será feita manualmente em um momento posterior?

@Viveiros
Copy link
Author

Oi Julian,
Acredito que devemos falhar o caso de teste e continuar as outras validações. Não podemos parar de verificar outras verificações só porque uma verificação fallhou.
Fui claro?

@juliancesar
Copy link
Contributor

Em conversa por telefone ficou acordado que será feito alguns testes utilizando o método Verify no lugar de Fail para que o teste sinalize que deu erro mas não aborte o caso de teste do JUnit.

@juliancesar
Copy link
Contributor

@Viveiros, você conseguiu chegar a alguma conclusão? Existem outras demandas parecidas com esta e acredito que podemos juntar forças para conseguir melhorar este ponto.

Uma questão importante com relação a isso é que mesmo que alteremos o comportamento do Dbehave precisamos deixar parametrizável a utilização do comportamento antigo.

@juliancesar
Copy link
Contributor

@Viveiros, talvez você possa nos ajudar na issue #467.

@juliancesar
Copy link
Contributor

@Viveiros , algum avanço no assunto?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants