From b0a5fd1148d43d94478b348748dbcf70209856da Mon Sep 17 00:00:00 2001 From: Mauro Costa Date: Fri, 24 Nov 2023 19:57:05 -0300 Subject: [PATCH] =?UTF-8?q?feat:=20atualiza=C3=A7=C3=A3o=20de=20teste=20se?= =?UTF-8?q?i3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tests_sei3/funcional/phpunit.xml | 4 + .../paginas/PaginaCadastroOrgaoExterno.php | 34 ++++++++ .../PaginaTramiteMapeamentoOrgaoExterno.php | 6 +- .../funcional/tests/CenarioBaseTestCase.php | 4 +- ...cionamentoOrgaosListagemImportacaoTest.php | 87 +++++++++++++++++-- 5 files changed, 125 insertions(+), 10 deletions(-) rename tests_sei3/funcional/{tests => src/paginas}/PaginaTramiteMapeamentoOrgaoExterno.php (89%) diff --git a/tests_sei3/funcional/phpunit.xml b/tests_sei3/funcional/phpunit.xml index 3c07c70d1..06b2af972 100755 --- a/tests_sei3/funcional/phpunit.xml +++ b/tests_sei3/funcional/phpunit.xml @@ -29,6 +29,8 @@ + @@ -69,6 +71,8 @@ + diff --git a/tests_sei3/funcional/src/paginas/PaginaCadastroOrgaoExterno.php b/tests_sei3/funcional/src/paginas/PaginaCadastroOrgaoExterno.php index 06b2fbd80..a0f249c33 100644 --- a/tests_sei3/funcional/src/paginas/PaginaCadastroOrgaoExterno.php +++ b/tests_sei3/funcional/src/paginas/PaginaCadastroOrgaoExterno.php @@ -130,6 +130,21 @@ public function editarMapOrgao() $this->test->byXPath("(//img[@title='Alterar Mapeamento'])[1]")->click(); } + /** + * Lispar campo de pesquisa + * Colocar texto para pesquisa + * Clicar no bot?o pesquisar + * + * @param string $textoPesquisa + * @return void + */ + public function selecionarPesquisa($textoPesquisa) + { + $this->test->byId('txtSiglaOrigem')->clear(); + $this->test->byId('txtSiglaOrigem')->value($textoPesquisa); + $this->test->byId("btnPesquisar")->click(); + } + /** * Selecionar primeira checkbox de exclusão * Seleciona botão excluir @@ -214,4 +229,23 @@ public function buscarMensagemAlerta() $alerta = $this->test->alertText(); return !empty($alerta) ? $alerta : ""; } + + + /** + * Buscar item de tabela por nome + * + * @param string $nome + * @return string|null + */ + public function buscarNome($nome) + { + try { + $nomeSelecionado = $this->test->byXPath("//td[contains(.,'" . $nome . "')]")->text(); + return !empty($nomeSelecionado) && !is_null($nomeSelecionado) ? + $nomeSelecionado : + null; + } catch (Exception $ex) { + return null; + } + } } \ No newline at end of file diff --git a/tests_sei3/funcional/tests/PaginaTramiteMapeamentoOrgaoExterno.php b/tests_sei3/funcional/src/paginas/PaginaTramiteMapeamentoOrgaoExterno.php similarity index 89% rename from tests_sei3/funcional/tests/PaginaTramiteMapeamentoOrgaoExterno.php rename to tests_sei3/funcional/src/paginas/PaginaTramiteMapeamentoOrgaoExterno.php index 9aff6bb5e..e3383dd14 100644 --- a/tests_sei3/funcional/tests/PaginaTramiteMapeamentoOrgaoExterno.php +++ b/tests_sei3/funcional/src/paginas/PaginaTramiteMapeamentoOrgaoExterno.php @@ -18,7 +18,7 @@ public function reativarMapeamento () { } public function reativarMapeamentoCheckbox() { - $this->test->byXPath("//div[contains(@class, 'infraCheckboxDiv')]")->click(); + $this->test->byXPath("(//input[@id='chkInfraItem0'])[1]")->click(); $this->test->byId("btnReativar")->click(); $bolExisteAlerta=$this->alertTextAndClose(); if($bolExisteAlerta!=null)$this->test->keys(Keys::ENTER); @@ -33,7 +33,7 @@ public function desativarMapeamento () { } public function desativarMapeamentoCheckbox() { - $this->test->byXPath("//div[contains(@class, 'infraCheckboxDiv')]")->click(); + $this->test->byXPath("(//input[@id='chkInfraItem0'])[1]")->click(); $this->test->byId("btnDesativar")->click(); $bolExisteAlerta=$this->alertTextAndClose(); if($bolExisteAlerta!=null)$this->test->keys(Keys::ENTER); @@ -43,6 +43,4 @@ public function desativarMapeamentoCheckbox() { public function selectEstado($estado) { $this->test->select($this->test->byId('txtEstadoSelect'))->selectOptionByLabel($estado); } - - } \ No newline at end of file diff --git a/tests_sei3/funcional/tests/CenarioBaseTestCase.php b/tests_sei3/funcional/tests/CenarioBaseTestCase.php index 40ccf0364..31f746eb4 100755 --- a/tests_sei3/funcional/tests/CenarioBaseTestCase.php +++ b/tests_sei3/funcional/tests/CenarioBaseTestCase.php @@ -39,6 +39,7 @@ class CenarioBaseTestCase extends Selenium2TestCase protected $paginaCancelarDocumento = null; protected $paginaTramitarProcessoEmLote = null; protected $paginaCadastroOrgaoExterno = null; + protected $paginaCadastroMapEnvioCompDigitais = null; protected $paginaTramiteMapeamentoOrgaoExterno = null; public function setUpPage(): void @@ -58,8 +59,8 @@ public function setUpPage(): void $this->paginaCancelarDocumento = new PaginaCancelarDocumento($this); $this->paginaMoverDocumento = new PaginaMoverDocumento($this); $this->paginaTramitarProcessoEmLote = new PaginaTramitarProcessoEmLote($this); - $this->paginaCadastroOrgaoExterno = new PaginaCadastroOrgaoExterno($this); $this->paginaTramiteMapeamentoOrgaoExterno = new PaginaTramiteMapeamentoOrgaoExterno($this); + $this->paginaCadastroOrgaoExterno = new PaginaCadastroOrgaoExterno($this); $this->currentWindow()->maximize(); } @@ -197,6 +198,7 @@ protected function definirContextoTeste($nomeContexto) 'ID_REP_ESTRUTURAS' => constant($nomeContexto . '_ID_REP_ESTRUTURAS'), 'ID_ESTRUTURA' => constant($nomeContexto . '_ID_ESTRUTURA'), 'NOME_UNIDADE_ESTRUTURA' => constant($nomeContexto . '_UNIDADE_ESTRUTURAS'), + 'NOME_UNIDADE_ESTRUTURA' => constant($nomeContexto . '_UNIDADE_ESTRUTURAS'), 'HIPOTESE_RESTRICAO_INATIVA' => constant($nomeContexto . '_HIPOTESE_RESTRICAO_INATIVA'), 'TIPO_PROCESSO_SIGILOSO' => constant($nomeContexto . '_TIPO_PROCESSO_SIGILOSO'), 'HIPOTESE_SIGILOSO' => constant($nomeContexto . '_HIPOTESE_SIGILOSO'), diff --git a/tests_sei3/funcional/tests/MapeamentoTipoProcessoRelacionamentoOrgaosListagemImportacaoTest.php b/tests_sei3/funcional/tests/MapeamentoTipoProcessoRelacionamentoOrgaosListagemImportacaoTest.php index a2d8e80d5..0704d2dfe 100644 --- a/tests_sei3/funcional/tests/MapeamentoTipoProcessoRelacionamentoOrgaosListagemImportacaoTest.php +++ b/tests_sei3/funcional/tests/MapeamentoTipoProcessoRelacionamentoOrgaosListagemImportacaoTest.php @@ -11,9 +11,7 @@ class MapeamentoTipoProcessoRelacionamentoOrgaosListagemImportacaoTest extends C public static $remetenteB; /** - * Teste para cadastro de mapeamento de orgão exteno - * - * @group MapeamentoOrgaoExterno + * Teste de cadastro de novo mapeamento entre ogrãos * * @return void */ @@ -53,8 +51,11 @@ public function test_cadastrar_novo_mapeamento_orgao_externo() * * @return void */ - public function test_desativacao_mapeamento_orgao_externo() + public function test_desativacao_mapeamento_orgao_externo() { + // Configuração do dados para teste do cenário + self::$remetente = $this->definirContextoTeste(CONTEXTO_ORGAO_A); + $this->acessarSistema(self::$remetente['URL'], self::$remetente['SIGLA_UNIDADE'], self::$remetente['LOGIN'], self::$remetente['SENHA']); $this->navegarPara('pen_map_orgaos_externos_listar'); @@ -78,7 +79,8 @@ public function test_desativacao_mapeamento_orgao_externo() * * @return void */ - public function test_reativacao_mapeamento_orgao_externo() { + public function test_reativacao_mapeamento_orgao_externo() + { $this->acessarSistema(self::$remetente['URL'], self::$remetente['SIGLA_UNIDADE'], self::$remetente['LOGIN'], self::$remetente['SENHA']); $this->navegarPara('pen_map_orgaos_externos_listar'); @@ -93,6 +95,35 @@ public function test_reativacao_mapeamento_orgao_externo() { ); } + /** + * Teste para pesquisar mapeamento entre orgãos + * + * @Depends test_desativacao_mapeamento_orgao_externo + * + * @return void + */ + public function test_pesquisar_mapeamento_orgao_externo() + { + self::$remetente = $this->definirContextoTeste(CONTEXTO_ORGAO_A); + $this->acessarSistema( + self::$remetente['URL'], + self::$remetente['SIGLA_UNIDADE'], + self::$remetente['LOGIN'], + self::$remetente['SENHA'] + ); + $this->navegarPara('pen_map_orgaos_externos_listar'); + + // Buscar pesquisa vazia + $this->paginaCadastroOrgaoExterno->selecionarPesquisa(self::$remetente['NOME_UNIDADE_ESTRUTURA'] . 'B'); + $nomeRepositorioCadastrado = $this->paginaCadastroOrgaoExterno->buscarNome(self::$remetente['NOME_UNIDADE_ESTRUTURA']); + $this->assertNull($nomeRepositorioCadastrado); + + // Buscar pesquisa com sucesso + $this->paginaCadastroOrgaoExterno->selecionarPesquisa(self::$remetente['NOME_UNIDADE_ESTRUTURA']); + $nomeRepositorioCadastrado = $this->paginaCadastroOrgaoExterno->buscarNome(self::$remetente['NOME_UNIDADE_ESTRUTURA']); + $this->assertNotNull($nomeRepositorioCadastrado); + } + /** * Teste para cadastro de mapeamento de orgão exteno já existente * @@ -158,6 +189,52 @@ public function test_editar_mapeamento_orgao_externo() ); } + /** + * Teste de desativação de um Relacionamento entre Órgãos via checkbox + * + * @large + * + * @return void + */ + public function test_desativacao_checkbox_mapeamento_orgao_externo() + { + $this->acessarSistema(self::$remetente['URL'], self::$remetente['SIGLA_UNIDADE'], self::$remetente['LOGIN'], self::$remetente['SENHA']); + $this->navegarPara('pen_map_orgaos_externos_listar'); + + $this->paginaTramiteMapeamentoOrgaoExterno->selectEstado("Ativo"); + $this->paginaTramiteMapeamentoOrgaoExterno->desativarMapeamentoCheckbox(); + + sleep(1); + $mensagem = $this->paginaCadastroOrgaoExterno->buscarMensagemAlerta(); + $this->assertStringContainsString( + utf8_encode('Relacionamento entre Órgãos foi desativado com sucesso.'), + $mensagem + ); + } + + /** + * Teste de desativação de um Relacionamento entre Órgãos via checkbox + * + * @large + * + * @return void + */ + public function test_reativar_checkbox_mapeamento_orgao_externo() + { + $this->acessarSistema(self::$remetente['URL'], self::$remetente['SIGLA_UNIDADE'], self::$remetente['LOGIN'], self::$remetente['SENHA']); + $this->navegarPara('pen_map_orgaos_externos_listar'); + + $this->paginaTramiteMapeamentoOrgaoExterno->selectEstado("Inativo"); + $this->paginaTramiteMapeamentoOrgaoExterno->reativarMapeamentoCheckbox(); + + sleep(1); + $mensagem = $this->paginaCadastroOrgaoExterno->buscarMensagemAlerta(); + $this->assertStringContainsString( + utf8_encode('Relacionamento entre Órgãos foi reativado com sucesso.'), + $mensagem + ); + } + /** * Teste para excluir de mapeamento de orgão exteno *