| = Multiplos TomEE Arquillian |
| :index-group: Arquillian |
| :jbake-type: page |
| :jbake-status: published |
| |
| Este exemplo mostra como implantar duas aplicações diferentes, se necessário. |
| Às vezes, isso acontece se precisarmos de comunicação entre duas aplicações da web diferentes. Na nossa |
| por exemplo, implantaremos dois recursos da Web de aplicações e testaremos seu conteúdo. |
| |
| == Executando a aplicação: |
| |
| [source, bash] |
| ---- |
| mvn clean test |
| ---- |
| Este comando executa o teste em que especificamos as duas implantações que queremos testar. |
| O teste implementa dois aplicativos nos quais testamos seu conteúdo que definimos como recurso da web nos métodos `createDep1()` e `createDep2() `. |
| |
| == Anotação @Deployment |
| |
| Se queremos ter duas aplicações diferentes em execução no mesmo teste, é |
| simples como adicionar dois métodos anotados `@Deployment` à nossa classe de teste. |
| |
| [source,java] |
| ---- |
| @Deployment(name = "war1", testable = false) |
| @TargetsContainer("tomee-1") |
| public static WebArchive createDep1() { |
| return ShrinkWrap.create(WebArchive.class, "application1.war") |
| .addAsWebResource(new StringAsset("Hello from TomEE 1"), "index.html"); |
| } |
| |
| @Deployment(name = "war2", testable = false) |
| @TargetsContainer("tomee-2") |
| public static WebArchive createDep2() { |
| return ShrinkWrap.create(WebArchive.class, "application2.war") |
| .addAsWebResource(new StringAsset("Hello from TomEE 2"), "index.html"); |
| } |
| ---- |
| |
| == Definir o contexto de `Deployment` |
| |
| Para cada método de teste, precisamos definir em qual contexto de `Deployment` os testes |
| devem ser executados. Para isso, usamos a anotação `@OperateOnDeployment("war2")` no nosso método de teste. |
| |
| [source,java] |
| ---- |
| @Test |
| @OperateOnDeployment("war2") |
| public void testRunningInDep2(@ArquillianResource final URL url) throws IOException { |
| final String content = IO.slurp(url); |
| assertEquals("Hello from TomEE 2", content); |
| } |
| ---- |