Pepino como executar funções várias vezes com código diferente em teste?

0

Pergunta

A versão original: Como eu faço Junit da @RunWith(Parameterized::class) com características do pepino?

Eu tenho arquivos de recurso que eu gosto. Eu quero executar exatamente a mesma possui várias vezes, mas a mudança "meio ambiente", de modo a @Before código no meu passo-defs é um pouco diferente. Eu tenho um pouco diferentes implementações de código em teste, e eu quero ter certeza de que todo o trabalho. Por isso tem que ser parte do CI pipeline. Não é um manual cmd-line coisa

A única coisa que eu quero mudar entre as execuções não tem significado semântico para os cenários/recursos de arquivo, então eu preferir não alterar radicalmente/duplicá-los.

Eu estou usando o estoque java/kotlin e gradle junit. Sem primavera, sem webUI

Eu configuração de vários junit ganchos de todos apontando para o mesmo apresenta, que trabalha para a execução de recursos várias vezes. Mas eu não consigo descobrir como obter informações a partir de um gancho para o passo-defs.

--- update ---

Aqui está o código que eu conecte a pepino testes em junit :

@RunWith(Cucumber::class)
@CucumberOptions(
    features = ["src/test/resources/hellocucumber/"],
)
class FirstRun

@RunWith(Cucumber::class)
@CucumberOptions(
    features = ["src/test/resources/hellocucumber/"],
)
class SecondRun

Este não executar os testes duas vezes, que é o que eu quero.

Mas, no meu passo-defs eu o @Before seção foram configurar o código em teste, como posso dizer se é a primeira execução, ou o segundo? Eu não consigo descobrir uma maneira de obter os dados a partir desses esboços para o passo-a-defs.

Talvez esta não é a maneira de fazer isso?

cucumber gradle java junit
2021-11-23 03:59:53
1

Melhor resposta

0

Que tal usar variáveis de ambiente para modificar o seu antes de código e, em seguida, em vez de tentar pepino para executar funções várias vezes, a execução de um script de pepino várias vezes, cada uma com diferentes variáveis de ambiente.

Você pode utilizador diferentes valores para ENV vars. Ou até mesmo em diferentes conjuntos de ENV vars.

Suas características irão saber que eles são de ENV,

2021-11-28 19:03:44

sim, isso faz sentido. Mas agora eu só empurrou o problema de volta para o gradle, o Que não é um bastião da simplicidade. Especialmente se você ainda deseja que seus testes para executar em paralelo.
West_JR

Em outros idiomas

Esta página está em outros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................