Olá pessoal!
No post Integração do Testlink com o Mantis BugTracker eu apresentei a forma, na época, de fazer a integração com estas duas ferramentas que era via arquivo de configuração.
Nas versões mais atuais do Testlink (1.9.x) esse método mudou, onde não há mais a necessidade de integração via arquivos de configuração. A nova abordagem agora é na própria página do Testlink através de uma nova funcionalidade de Issue Tracker (Gestor de Falhas)
O vídeo abaixo mostra como fazer esta configuração nas versões mais atuais do Testlink.
Mostrando postagens com marcador mantis. Mostrar todas as postagens
Mostrando postagens com marcador mantis. Mostrar todas as postagens
quinta-feira, 26 de setembro de 2013
terça-feira, 19 de outubro de 2010
Projeto de Integracao Selenium x Mantis x Testlink
Olá Pessoal!
Como último post sobre a Integração com o Selenium e ferramentas de Gestão de Teste e Gestão de Defeitos criei um projeto em Java que integra o Selenium, Mantis e Testlink.
É recomendado você ler os dois post's abaixo:
Se você já leu estes dois tutoriais, continue lendo este post...
Este projeto de exemplo vai:
1. Organização
Este projeto foi dividido nos seguintes pacotes, conforme descrito abaixo:
2. Modificações
A seguir serão apresentados os trechos das classes que foram alterados e os devidos comentários sobre as alterações
MantisReport.java
Nesta classe foram feitas as seguintes alterações:
PS: A classe abaixo está omitindo uma série de linhas de código, sendo apresentado apenas as mais relevantes perante as alterações.
ResultadoExecucao.java
Nesta classe foram feitas as seguintes alterações:
CasoTeste.java
Esta classe é a mesma utilizado nos outros dois tutoriais, porém com nome diferente.
Basicamente foi alterado apenas o bloco finnally do script.
PS: A classe abaixo está omitindo uma série de linhas de código, sendo apresentado apenas as mais relevantes perante as alterações.
3. Baixando o código-fonte
O projeto completo e funcional pode ser baixado no link abaixo (18 MB):
http://www.eliasnogueira.com/arquivos_blog/selenium/integracao/mantis_testlink/selenium-integration.zip
4. Verificando online o resultado de execução
Se você baixar o projeto e já executá-lo ( ) poderá ver que os resultados no Testlink e Mantis serão colocados em ambas aplicações que tenho online.
Para acessar ambos, utilize os seguintes dados de login:
http://www.eliasnogueira.com/arquivos_blog/mantisbt-1.2.3/
Agora no Testlink, que está acessível pela URL abaixo, veremos que o resultado reportado foi com falha, está dentro do mesmo horário de criação do bug e tem o bug associado, conforme figura.
Bom pessoal, por enquanto é isso! Abraço a todos!
Como último post sobre a Integração com o Selenium e ferramentas de Gestão de Teste e Gestão de Defeitos criei um projeto em Java que integra o Selenium, Mantis e Testlink.
É recomendado você ler os dois post's abaixo:
- Integração Selenium e Testlink
- Integração Selenium e Mantis
- Integração do Testlink com o MantisBugTracker
Se você já leu estes dois tutoriais, continue lendo este post...
Este projeto de exemplo vai:
- Executar um script de teste no Selenium RC
- O script de teste irá falhar
- Reportar um bug no Mantis anexando uma imagem do browser no momento do erro
- Reportar o resultado do teste (que será com falha) ao Testlink
- Associar o bug aberto ao Caso de Teste no Testlink
1. Organização
Este projeto foi dividido nos seguintes pacotes, conforme descrito abaixo:
- com.blogspot.sembugs.mantis
- ConnectMantis.java: Classe que faz a conexão com o Mantis
- MantisReport.java: Classe que reporta o bug no Mantis
- com.blogspot.sembugs.test
- CasoTeste.java: Caso de Teste de exemplo
- com.blogspot.sembugs.testlink
- ResultadoExecucao.java: Classe que reporta o resultado da execução do teste
- com.blogspot.sembugs.util
- IConstantes.java: Interface com dados comuns as classes
2. Modificações
A seguir serão apresentados os trechos das classes que foram alterados e os devidos comentários sobre as alterações
MantisReport.java
Nesta classe foram feitas as seguintes alterações:
- Linha 1: Mudança do método, que agora tem como retorno um String.
- Linha 8: Criado um atributo local do tipo long para retornar o ID do bug cadastrado
- Linha 12: O atributo local é transformado em uma String e atribuido a variável bugID
- Linha 22: Adicionado o retorno do método
PS: A classe abaixo está omitindo uma série de linhas de código, sendo apresentado apenas as mais relevantes perante as alterações.
1: public static String reporIssue(String sumario, String descricao, String categoria, String informacaoAdicional, String evidencia, String nomeArquivo) {
2: IMCSession sessao = null;
3: String arquivo = nomeArquivo + ".png";
4: String bugID = null;
5:
6: try {
7: // submete o bug no Mantis
8: long id = sessao.addIssue(issue);
9: sessao.addIssueAttachment(id, arquivo, "image/png", Base64.decodeBase64(evidencia));
10:
11: // retorna o ID do bug como String, para fazer o relacionanmento do bug com o Testlink
12: bugID = String.valueOf(id);
13:
14: } catch (MalformedURLException e) {
15: System.err.println("Erro na URL de acesso ao Mantis");
16: e.printStackTrace();
17: } catch (MCException e) {
18: System.err.println("Erro na comunicacao com o Mantis");
19: e.printStackTrace();
20: }
21:
22: return bugID;
23: }
24: }
ResultadoExecucao.java
Nesta classe foram feitas as seguintes alterações:
- Linha 1: Foi adicionado um novo parâmetro para a utilização do método: Integer bugID. É esperado que seja passado o ID do bug cadastrado para fazer a associação com o Testlink, mas não é obrigatório
- Linha 5: Um verificação é feita para ver se o ID do bug será passado. Se sim há uma séria de atributos que são obtidos para que o resultado de execução do caso de teste contenha o bug associado. Isso foi adicionado porque o método da API do Testlink tem uma assinatura (parâmetros) diferente do do método que não associa o bug
- Linhas 7, 8, 9 e 10: Todos os atributos locais necessários para a associação do bug no resultado do caso de teste.
- Linha 12: Envio dos dados de resultado do teste ao Testlink utilizando o ID do bug para associação.
- Linhas 13 e 14: Se o bug não for passado (for null) o envio do resultado de execução para o Testlink utiliza outro método para esta tarefa.
1: public static void reportTestCaseResult(String projetoTeste, String planoTeste, String casoTeste, String nomeBuild, String nota, String resultado, Integer bugID) throws TestLinkAPIException {
2:
3: TestLinkAPIClient testlinkAPIClient = new TestLinkAPIClient(DEVKEY, URL);
4:
5: if (bugID != null) {
6:
7: Integer projectID = TestLinkAPIHelper.getProjectID(testlinkAPIClient, PROJETO_TESTLINK);
8: Integer testPlanID = TestLinkAPIHelper.getPlanID(testlinkAPIClient, projectID, PLANO);
9: Integer testCaseID = TestLinkAPIHelper.getTestCaseID(testlinkAPIClient, projectID, CASO_TESTE1);
10: Integer buildID = TestLinkAPIHelper.getBuildID(testlinkAPIClient, testPlanID, nomeBuild);
11:
12: testlinkAPIClient.reportTestCaseResult(testPlanID, testCaseID, buildID, bugID, false, nota, resultado);
13: } else {
14: testlinkAPIClient.reportTestCaseResult(projetoTeste, planoTeste, casoTeste, nomeBuild, nota, resultado);
15: }
16: }
CasoTeste.java
Esta classe é a mesma utilizado nos outros dois tutoriais, porém com nome diferente.
Basicamente foi alterado apenas o bloco finnally do script.
- Linha 3: Foi adicionado o método para o report do bug, atribuindo para uma variável o ID do bug que foi adicionado.
- Linha 5: Adicionado o novo método com o parâmetro do bugID, para que o bug seja associado ao resultado de execução do caso de teste.
PS: A classe abaixo está omitindo uma série de linhas de código, sendo apresentado apenas as mais relevantes perante as alterações.
1: } finally {
2: if (erro) {
3: String bugID = MantisReport.reporIssue("Erro no Caso de Teste de Pesquisa de Livros", "Erro em alguma validacao ou validacao", "Automacao", msgErro, evidenciaErro, "CasoTesteMantisNOK");
4:
5: ResultadoExecucao.reportTestCaseResult(PROJETO_TESTLINK, PLANO, CASO_TESTE1, BUILD, msgErro, resultado, Integer.parseInt(bugID));
6:
7: CasoTeste.fail(msgErro);
8: }
9: }
3. Baixando o código-fonte
O projeto completo e funcional pode ser baixado no link abaixo (18 MB):
http://www.eliasnogueira.com/arquivos_blog/selenium/integracao/mantis_testlink/selenium-integration.zip
4. Verificando online o resultado de execução
Se você baixar o projeto e já executá-lo ( ) poderá ver que os resultados no Testlink e Mantis serão colocados em ambas aplicações que tenho online.
Para acessar ambos, utilize os seguintes dados de login:
- Usuário: convidado
- Senha: convidado
http://www.eliasnogueira.com/arquivos_blog/mantisbt-1.2.3/
Agora no Testlink, que está acessível pela URL abaixo, veremos que o resultado reportado foi com falha, está dentro do mesmo horário de criação do bug e tem o bug associado, conforme figura.
Bom pessoal, por enquanto é isso! Abraço a todos!
quarta-feira, 21 de abril de 2010
Corrigindo o problema de Lost Password no Mantis 1.2.0
Demorou, mas agora estou fazendo um "pente fino" na versão 1.2.0 do Mantis que está estável foi lançado dia 24/02/2010.
Porém, como toda ferramenta as open source também passam por alguma problemas, é o caso da funcionalidade "Lost Password" (Esqueci minha senha) na tela de entrada do Mantis.
Hoje se tu tentar utilizar essa funcionalidade, verás que o não acontecerá nada e também não chegará um email para a troca de senha.
Já existe um bug aberto para este problema: http://www.mantisbt.org/bugs/view.php?id=11394
O bug está apontado para entrar na próxima release estável no Mantis, mas é ruim ficar aguardando a versão estável para solucionar o problema.
Para resolver o problema abra o arquivo email_api.php localizado dentro da pasta core no diretório de instalação do Mantis. Abra o arquivo e localize o seguinte trecho do código: lang_push( user_pref_get_language( $p_user_id ) );
Comente este trecho de código, colocando um "//" no inicio da linha, ficando assim: //lang_push( user_pref_get_language( $p_user_id ) );
Pronto! Agora é só testar a funcionalidade. Abaixo segue a utilização dela:
Clicando no link "Lost Password"
Recebe retorno da ferramenta sobre o envio do email
Recebendo o email para o reset da senha.
Após clicar no link recebido no email, aparecerá a tela para inserir e confirmar a nova senha
É isso ai!
Qualquer dúvida deixe um comentário e não deixe de ver os outros post relacionados ao Mantis: http://sembugs.blogspot.com/search/label/mantis
Porém, como toda ferramenta as open source também passam por alguma problemas, é o caso da funcionalidade "Lost Password" (Esqueci minha senha) na tela de entrada do Mantis.
Hoje se tu tentar utilizar essa funcionalidade, verás que o não acontecerá nada e também não chegará um email para a troca de senha.
Já existe um bug aberto para este problema: http://www.mantisbt.org/bugs/view.php?id=11394
O bug está apontado para entrar na próxima release estável no Mantis, mas é ruim ficar aguardando a versão estável para solucionar o problema.
Para resolver o problema abra o arquivo email_api.php localizado dentro da pasta core no diretório de instalação do Mantis. Abra o arquivo e localize o seguinte trecho do código: lang_push( user_pref_get_language( $p_user_id ) );
Comente este trecho de código, colocando um "//" no inicio da linha, ficando assim: //lang_push( user_pref_get_language( $p_user_id ) );
Pronto! Agora é só testar a funcionalidade. Abaixo segue a utilização dela:
Clicando no link "Lost Password"
Recebe retorno da ferramenta sobre o envio do email
Recebendo o email para o reset da senha.
Após clicar no link recebido no email, aparecerá a tela para inserir e confirmar a nova senha
É isso ai!
Qualquer dúvida deixe um comentário e não deixe de ver os outros post relacionados ao Mantis: http://sembugs.blogspot.com/search/label/mantis
quinta-feira, 7 de maio de 2009
Adicionando um campo customizado na View do Mantis
Neste post falaremos de uma gambiarra, digo maneira de apresentar algum campo customizado no View Issues ou Ver Casos no Mantis.
Algumas pessoas tem me perguntado como fazer isso.
Abra o arquivo e vá até a linha 195. Lá veremos a função custom_function_default_get_columns_to_view como mostra a imagem abaixo.
Algumas pessoas tem me perguntado como fazer isso.
Ressalvas
- Em cada atualização de versão, este procedimento deve ser feito novamente
- A coluna aparecerá sem valores para perfis de usuarios menor do que o informado no campo customizado.
Ex: o campo customizado foi criado para perfis a partir de "developers" visualizarem. Quando um usuairo "reporter" acessa, a coluna estará la, mas o valor de campo não.
Procedimentos
No diretório instalacao_mantis/core têm um arquivo chamado "custom_function_api.php"Abra o arquivo e vá até a linha 195. Lá veremos a função custom_function_default_get_columns_to_view como mostra a imagem abaixo.
clique na imagem para ampliar
Para colocar uma, ou quantas colunas forem do seu gosto, adicionaremos ao final da chave de fechamento do if..else a seguinte linha:
$t_columns[] = 'custom_NOME_CAMPO_CUSTOMIZADO';
onde:
custom_: valor fixo
NOME_CAMPO_CUSTOMIZADO: nome do campo customizado criado.
A função agora ficará como a imagem abaixo:
clique na imagem para ampliar
Resultado
Após os procedimentos acima, basta salvar o arquivo e atualizar a página para que o campo apresente a coluna e seu(s) respectivo(s) valor(es).
Deve ficar como na imagem abaixo:
clique na imagem para ampliar
Note que eu criei um campo customizado com o nome "customizado" e o inclui no View Issues pelo procedimento acima.
O campo que criei é uma combobox que possue dois valores: Dados 1 e Dados 2.
Note que o Mantis já internaliza este campo nas pesquisas que podem ser executadas, inserindo o nome do campo no Search respeitando o tipo de campo que você atribuiu a ele.
clique na imagem para ampliar
Bom, o post termina aqui. Esta customização não é complicada, só requer atenção e lembrança sempre que houver uma atualização de versão do Mantis, e lembrar sobre os niveis de acesso ao campo customizado para a visualização dos dados do campo inserido.
Abraços!
domingo, 11 de janeiro de 2009
Mantis Bugtracker plugins - parte 2
ATENÇÃO: Post atualizado!
O Plugin Manager apresentado abaixo é uma ferramenta de terceiros e não é mais suportado por versões superiores a 1.2.0Podemos evidenciar isso pelos links abaixo
http://www.mantisbt.org/forums/viewtopic.php?f=3&t=19935
http://www.mantisbt.org/bugs/view.php?id=12183
Porém...
Alternativamente alguns plugins da nova estrutura de plugins do Mantis podem ser visualizados em
https://github.com/mantisbt-plugins
----
Nesse post veremos o funcionamento o plugin BBCode.
Se esta é a primeira vez que você visualiza este post ou não tem o PluginManager instalado no Mantis, por favor, leia o post Mantis Bugtracker plugins - parte 1
Instalando o plugin
Nessa instalação, vou optar por baixar o arquivo .pkg e submete-lo via interface de administração do Plugin Manager.
Para isso você precisa estar logado no Mantis como Administrador e possuir o plugin Plugin Manager instalado.
O download do plugin pode ser feito na página de download dos plugins ou diretamente neste link. A versão do plugin utilizada agora é a 0.0.5
Com o plugin baixado, vá até o link Plugins no Mantis e clique no botão Browse, selecionando o plugin BBCode.
Clique para ampliar
Feito isso clique no botão Submit. A tela com os detalhes da instalação do plugins é apresentada:
Clique para ampliar
Clique no link Return to Plugin Manager. Noque que na lista de plugins instalados o BBCode será listado.
Para habilitá-lo, é necessário entrar nas configurações do plugins e marcar a checkbox Enable. Basicamente existem três propriedades:
- Enable: habilita ou desabilita o plugin
- Editor Type: especifica o tipo de editor: Simples ou WYSIWYG
- Custon Tags: adicionar tags especificar para o editor
Como há nas configrações, existem dois tipos de editor: o Simples e o WYSIWYG
Eles aparecerão em todos os campos que forem do tipo texto livre.
A diferença básica entre eles (confesso que não sei a diferença total) é que o editor WYSIWYG já aplica as alterações diretamente no componente, e o editor Simples insere tags tipo BBCode.
Abaixo a imagem de cada um deles:
Editor WYSIWYG em modo de edição (clique para ampliar)
Editor Simples em mode de edição (clique para ampliar)
Visualização da aplicação do editor (Simples ou WYSIWYG)
Importante
Se você desabilitar ou remover o plugin os caracteres BBCode continuarão no banco de dados e serão exibidos na issue.
Clique para ampliar
Ainda não descobri como remover os BBCodes do banco, mas assim que eu conseguir, atualizo este post.
Por agora era isso... A maioria dos plugins são fáceis de instalar e traz uns benefícios legais, como o BBCode.
Logo trarei mais plugins aqui.
Abraços!
sábado, 10 de janeiro de 2009
Mantis Bugtracker plugins - parte 1
ATENÇÃO: Post atualizado!
O Plugin Manager apresentado abaixo é uma ferramenta de terceiros e não é mais suportado por versões superiores a 1.2.0Podemos evidenciar isso pelos links abaixo
http://www.mantisbt.org/forums/viewtopic.php?f=3&t=19935
http://www.mantisbt.org/bugs/view.php?id=12183
Porém...
Alternativamente alguns plugins da nova estrutura de plugins do Mantis podem ser visualizados em
https://github.com/mantisbt-plugins
----
Poucos sabem, mas o Mantis pode ser entendido por diversos plugins.
Um dos desenvolvedores do Mantis criou a maioria do plugins disponíveis no site http://deboutv.free.fr/mantis/
A intenção neste post é apresentar o que faz cada plugin, onde dividiremos em séries apresentando estes plugin, para que você possa tirar mais proveito dessa ferramenta de BugTracker
O inicio de tudo: Plugin Manager
O Plugin Manager é o “plugin pai”, é com ele que gerenciamos os outros plugins. Segundo sua própria página ele é responsável por:
- Gerenciar a instalação, atualização e remoção de plugins
- Possibilidade de criar o seu próprio plugin e compartilhá-lo com a comunidade
- Fácil de instalar
- Gerenciar tradução (se o plugin suportar)
Neste post a versão do Mantis que está sendo utilizado é a 1.1.6
O donwload do plugin pode ser feito diretamente na página de downloads do site. Procure sempre baixar a ultima versão.
Como estamos fazendo a instalação "do zero", não será o intuito aqui apresentar como se faz a atualização dos plugins, mas a mesma pode ser encontrada na página de cada um.
A versão que utilizaremos aqui do Plugin Manager é a 0.40
Depois de baixar o plugin (arquivo .tar.gz que pode ser aberto com qualquer software de compressão de arquivos), descompacte-o na pasta raiz do Mantis. No meu caso a pasta raiz do Mantis aqui é C:/wamp/www/mantisbt-1.1.6
Serão descompactadas uma pasta chamada plugins e e oito arquivos .php com o prefixo plugins_
Agora entre no Mantis como administrador. Feito isso substitua a pagina my_view_page.php por plugins_page.php na barra de URL do seu navegador. No meu caso a barra de URL ficou http://localhost/mantisbt-1.1.6/plugins_install_page.php
A página de confirmação do plugin será apresentada, conforme a imagem abaixo:
Clique na imagem para ampliar
Atualizando a página você vai notar que um link chamado Plugins será habilitado. Clicando nesse link você será redirecionado para a página do Plugin Manager.
Clique na imagem para ampliar
Existe três maneiras de instalar um plugin:
- Adicionando a URL do plugin
- Carregar o plugin pela página
- Selecionando um plugin na lista d eplugins disponíveis
Clique na imagem para ampliar
Todos os plugins disponíveis na página de download tem a extensão .pkg. Basta colar a URL do plugin, se você não quiser baixá-lo (Plugin URL (FTP, HTTP or File) ) , procurar o plugin se você baixou ele ( Upload file (*.mantis-pkg only) ) ou instalar pela lista de plugins disponíveis (Available plugin list).
A lista de plugins disponíveis apresenta os plugins por nome, descrição, autor, data e versão. Basta clicar no link Install que ele será instalado no Mantis. A mesma coisa serve para remover os plugins já instalados.
As três maneiras que você tem para instalar um plugin, levarão para a mesma tela de informações da instalação do plugin, mesma tela de quando instalamos o Plugin Manager.
Após ter procedido com a instalação do plugin ele aparecerá na lista de plugins
Clique na imagem para ampliar
Na lista de plugins temos as seguintes ações:
- Alterar as configurações do plugin clicando em seu nome na coluna Plugins
- Visitar seu website clicando no link www da coluna Website
- Verificar a versão do plugin na coluna em Installed/Current version
- Remover um plugin clicando no link Unistall na coluna Unistall a plugin
- Check Version: verifica a versão instalada
- Check Development Version: verifica a versão de desenvolvimento
- Display Website URL: exibir a URL de aceso do plugin
- URL list of site providing plugins: URL para a lista de plugin disponíveis (Available plugins)
- Threshold to see Plugins link: Limiar para ver o link de plugins. O perfil que visualizar esse link só poderá ver os plugins instalados
- Install/Uninstall/Package: Limiar para gerenciar os plugins
- Configuration threshold (Plugin Manager): que perfil poderá configurar as propriedades do Plugin Manager
Clique na imagem para ampliar
Para a remoção de plugins basta clicar no link Uninstall. Antes da remoção efetiva uma tela de confimação aparecerá:
Clique na imagem para ampliar
Removendo o plugin, uma tela informando todas as ações executadas para a remoção do mesmo aparecerá.
Bem. Este post mostrou como instalar o "plugin pai". Da mesma forma instalaremos os outros plugins. No proximo post já inciaremos a instalação e utilização dos plugins disponíveis.
Abraços!
quinta-feira, 18 de setembro de 2008
Envio de email por SSL no Mantis
Olá pessoal!
Uma funcionalidade esperada a muito tempo por mim e outros utilizadores do Mantis é de você poder usar um envio de email sob o protocolo de SSL (como o do Gmail).
Só tenho uma "má" notícia: este funcionalidade está cobeta na versão 1.2 que encontra-se em desenvolvimento ainda (na data deste posta na versão 1.2.0a2).
Pelo o que eu tenho testado esta versão ele está estável, sem bugs críticos e com novas funcionalidades, que serão postadas aqui quando a versão estável for lançada.
Bem, então vamos por a mão na massa então!
Mas o principal pre-requisito para essa configuração é a habilitação do OpenSSL no PHP, que é uma extensão do mesmo. Podemos fazer a habilitação de duas formas:
Então copie as seguintes variéveis do arquivo config_defaults_inc.php para config_inc.php:
Com isso é só testar normalmente o envio de emails. Meus testes foram utilizando o envio de email pelo GMail da minha própria conta pessoal, e funcionou sem problemas.
A razão deste post foram duas: uma pergunta de um leitor e a issue #8369 aberta no Mantis.
Se alguem visualizar a issue vai ver que pode ser feito uma "gambiarra" para funcionar nas versões anteriores. Eu tentei "gambiarrizar" de tudo que foi forma e não consegui, então aconselho mesmo a utilizar a versão 1.2.x para utilizar esta funcionalidade!
Abraços!
Uma funcionalidade esperada a muito tempo por mim e outros utilizadores do Mantis é de você poder usar um envio de email sob o protocolo de SSL (como o do Gmail).
Só tenho uma "má" notícia: este funcionalidade está cobeta na versão 1.2 que encontra-se em desenvolvimento ainda (na data deste posta na versão 1.2.0a2).
Pelo o que eu tenho testado esta versão ele está estável, sem bugs críticos e com novas funcionalidades, que serão postadas aqui quando a versão estável for lançada.
Bem, então vamos por a mão na massa então!
Pré-Requisitos
Como todos sabem o pre-requisito básico é a tríade LAMP ou WAMP, dependendo do sistema operacional. O exemplo que irei apresentar será sobre um WAMP, o WampServer rodando sobre um Windows XP SP3.Mas o principal pre-requisito para essa configuração é a habilitação do OpenSSL no PHP, que é uma extensão do mesmo. Podemos fazer a habilitação de duas formas:
- Visual
Neste modo, com o WampServer rodando, clicamos com o botão esquerdo do mouse sobre seu ícone e selecionamos: PHP/PHP extensions/php_openssl

O WampServer será reiniciado e a extensão sairá funcionando.
- Editando o arquivo php.ini
Se você não usa o WampServer, pode editar diretamente o arquivo php.ini para habilitara extensão. Localize seu arquivo php.ini, que varia do sistema operacional que você utiliza e local de instalação e abra em mode de edição. Localize a linha ;extension=php_openssl.dll e remova o ";". Salve o arquivo.
Configurando no Mantis
Como de costume sempre copie as variáveis do arquivo config_defaults_inc.php para config_inc.php.Então copie as seguintes variéveis do arquivo config_defaults_inc.php para config_inc.php:
- $g_phpMailer_method = Método de envio do email, podendo ser 0 - mail(), 1 - sendmail ou 2 - smtp
- $g_smtp_host = Host utilizado para o envio do email. A porta pode ser colocada junto no formato [host:port]
- $g_smtp_username = Nome do usuario que enviará o email
- $g_smtp_password = Senha do usuario que enviará o email
- $g_smtp_connection_mode = Controle do modo de conexão do SMTP, podendo ser 'SSL' ou 'TLS
Com isso é só testar normalmente o envio de emails. Meus testes foram utilizando o envio de email pelo GMail da minha própria conta pessoal, e funcionou sem problemas.
A razão deste post foram duas: uma pergunta de um leitor e a issue #8369 aberta no Mantis.
Se alguem visualizar a issue vai ver que pode ser feito uma "gambiarra" para funcionar nas versões anteriores. Eu tentei "gambiarrizar" de tudo que foi forma e não consegui, então aconselho mesmo a utilizar a versão 1.2.x para utilizar esta funcionalidade!
Abraços!
segunda-feira, 8 de setembro de 2008
Guia de Administração do Mantis - em inglês
Olá Pessoal!
Victor Boctor, principal desenvolvedor do Mantis BugTracker, submeteu um documento chamado Guia de Administração do Mantis (Mantis Administration Guide) da versão 1.2.x (atual, neste momento).
O material está no Scribd e em inglês, mas vale o esforço para quem não está tão familiarizado com a lingua do Tio Sam!
Link para o guia: http://www.scribd.com/doc/2088848/Mantis-Administration-Guide
Abraços!
Victor Boctor, principal desenvolvedor do Mantis BugTracker, submeteu um documento chamado Guia de Administração do Mantis (Mantis Administration Guide) da versão 1.2.x (atual, neste momento).
O material está no Scribd e em inglês, mas vale o esforço para quem não está tão familiarizado com a lingua do Tio Sam!
Link para o guia: http://www.scribd.com/doc/2088848/Mantis-Administration-Guide
Read this document on Scribd: Mantis Administration Guide
Abraços!
segunda-feira, 1 de setembro de 2008
Alteração do Workflow do Mantis
Para este meu novo post, ao invés de colocá-lo em formato do blog, vou disponibilizar um arquivo pdf contendo todos os passos necessários enquanto eu configuro os textos, links e imagens para que fique legivel aqui...
Você pode clicar neste link para baixar o arquivo!
Este documento também está disponível online no Scribd pelo link http://www.scribd.com/doc/5397664/Alteracao-do-Workflow-do-Mantis
Qualquer duvida, correção ou sugestão deixem um comentário!
Abraços!Elias Nogueira
segunda-feira, 25 de agosto de 2008
Envio de email no Mantis facil, facil
Uma duvida comum, mas um item muito necessário para o funcionamento e retorno da aplicação do Mantis é o envio de emails.

Por enquanto é só pessoal. Qualquer duvida postem um comentário. Abraços
Sempre que inserimos um usuário, por padrão o Mantis envia um email para este usuário com um link para que ele possa cadastrar sua senha. Veremos como funciona esta forma e outra onde não necessitamos dessa intervenção do usuário.
Vamos seguir alguns passos básicos para a habilitação do envio de email e outras configurações relacionadas.
Nesse exemplo eu utilizo o Mantis 1.1.2 rodando sobre um WAMPServer.
Habilitando o envio de email
Para habilitar o envio de emails é necessário termos acesso a um endereço de smtp, usuário e
senha para ele. Partimos do principio que temos essa informação.
senha para ele. Partimos do principio que temos essa informação.
Acesse o diretório em que se encontra o Mantis, no meu caso é C:\wamp\www\mantis-1.1.2
e abra o arquivo config_defaults_inc.php. Como já sabemos esse é o arquivo de configuração padrão do Mantis.
e abra o arquivo config_defaults_inc.php. Como já sabemos esse é o arquivo de configuração padrão do Mantis.
Copie as quatro variáveis que são as exibidas na imagem acima e cole no arquivo config_inf.php:
·
- $$g_phpMailer_method
- $g_smtp_host
- $g_smtp_username
- $g_smtp_passoword
·
Altere os valores das variáveis para os indicados na imagem.
Colocamos a variável $g_phpMailer_method com o valor 2, pois ele é o valor referente ao envio de email por endereços SMTP.
Colocamos a variável $g_phpMailer_method com o valor 2, pois ele é o valor referente ao envio de email por endereços SMTP.
Salve o arquivo e pronto! Sua configuração de email estará OK!
Como identificamos quando não está ou não OK?
Para testar, podemos criar um usuário com o seu email, para que você possa receber esse email de cadastro. Para isso crie um usuário no Mantis com o seu email.
Saberemos se ele não está OK se, obviamente, não recebermos o email de confirmação do cadastro e se é apresentado alguma mensagem de erro no topo da pagina para qualquer ação que envie emails (criação de usuário, reset de senha, alteração de status de projeto, cadastro de bugs).
Quando o email estiver OK receberemos um email informando sobre a ação executada. O exemplo
abaixo refere-se a validação de cadastro de um novo usuário.
abaixo refere-se a validação de cadastro de um novo usuário.
Abaixo um exemplo de um email quando um bug é atribuído a uma pessoa:
Note na primeira imagem que recebemos um email de “Mantis Bug Tracker” com o assunto “[Nome_projeto + Codigo_projeto]: Sumario_projeto”
Dentro do email enviado temos todas as informações pertinentes ao bug.
Alterando alguns parâmetros referentes a bugs
Temos mais algumas variáveis dentro do arquivo config_defaults.php que trabalham alterando alguma configuração no email. São elas:
| Linha do arquivo | Variável | Descrição |
| 173 | $g_allow_signup | Habilita os usuários a acessarem a aplicação por suas contas |
| 187 | $g_send_reset_password | Quando ON o Mantis envia um email informando que a troca de senha é necessária. Se OFF a senha é colocada em branco |
| 221 | $g_administrator_email | Endereço de email do administrador. É utilizado pelo administrador do sistema para erros que possa requerer alguma ação do mesmo. |
| 222 | $g_webmaster_email | Email do webmaster. Este é apresentado sempre no rodapé da aplicação |
| 225 | $g_from_email | O endereço de email para ser usado como a fonte de todos os e-mails enviados por Mantis |
| 228 | $g_from_name | Nome do usuário de quem enviou. Por padrão vem “Mantis Bug Tracker” |
| 231 | $g_return_path_email | E-mail para receber emails |
| 236 | $g_enable_email_notification | Defina ON para permitir notificações de e-mail, OFF para desativá-los. O padrão é ON |
| 278 | $g_default_notify_flags | Configurações de envio de email quando um bug é aberto. Geralmente não precisamos alterar este valor. |
| 291 | $g_notify_flags['new'] | Envio de notificação quando bug é aberto. O que está dentro de colchetes é o status que ira disparar o email e o array identifica os tipos de ações. |
| 295 | $g_email_receive_own | Se deseja receber email da suas próprias ações na ferramenta |
| 298 | $g_validate_email | Quando ON valida o email |
| 299 | $g_check_mx_record | Não utilizados no Windows (tbm não sei o que faz :P) |
| 305 | $g_allow_blank_email | Permite que o usuário não informe seu email durante o cadastro |
| 310 | $g_limit_email_domain | Somente envia emails para usuários que tenham o domínio especificado |
| 313 | $g_show_user_email_threshold | Especifica o nível de acesso necessário para lincar usuários com links mailto: |
| 318 | $g_mail_priority | Especifica o nivel de prioridade. 1: Urgente, 5: Não urgente e 0: Desabilitado |
| 343 | $g_email_send_using_cronjob | Sheduler que controla o envio de emails. Quando executamos uma ação o envio de email é efetuado e depois o usuário pode efetuar alguma ação. O scheduler envia os emails de 5 em 5 minutos |
| 349 | $g_email_set_category | Adiciona a Categoria do projeto no assunto do email |
Mais informações sobre notificação de emails:
Como funciona as configurações de email na aplicação?
Dentro da aplicação depomos configurar quem recebe emails quando alguma ação é executada na
ferramenta. Basicamente temos quatro ações macros e os perfis de acesso. Acessamos a configuração de email no link “Manager Configuration/Email Notification
ferramenta. Basicamente temos quatro ações macros e os perfis de acesso. Acessamos a configuração de email no link “Manager Configuration/Email Notification
Se quiser, por exemplo que o usuário de perfil reporter receba um email quando uma nota for
adicionada é só marcar a caixa de seleção referente aos dois itens. Estas alterações só podem ser feitas pel administrador do Mantis.
adicionada é só marcar a caixa de seleção referente aos dois itens. Estas alterações só podem ser feitas pel administrador do Mantis.
Por enquanto é só pessoal. Qualquer duvida postem um comentário. Abraços
sábado, 21 de junho de 2008
Customizando valores no Mantis: Prioridade
Quem utiliza o Mantis BugTracker pode não gostar dos valores default que encontram para os campos de prioridade. Mas poucos sabem, ou sabem e tem medo de alterar ou ainda sabem e ja alteraram estes valores.
Neste post vamos visulizar como alterar estes valores, bem como coloca-los para funcionar em qualquer idioma.
Apresento aqui uma forma de inserir ou até remover (não recomendado) determinado valores de campos.
Pré-Requisitos
Como o Mantis salva os dados de prioridade?
O Mantis não guarda nenhuma tabela para manter a relação de valores e codigo de cada campo. O que ele faz é salvar o codigo de cada valor configurado em suas propriedades. Podemos ir até o banco de dados e acessar a tabela mantis_bug_table e visualizar os dados contidos nela. Noque que o valore para a coluna priority foi salva como código, e não com o valor de cada campo:

Inserindo ou alterando valores de Prioridade
Segue abaixo a lista de valores bem como seu conteudo em inglês e português
Se entrarmos no arquivo config_default_inc.php e buscarmos pela variável $g_priority_enum_string veremos os valores:
$g_priority_enum_string = '10:none,20:low,30:normal,40:high,50:urgent,60:immediate';
Como podemos ver na tabela acima temos os codigos de cada valor que é salvo no banco de dados. Sendo assim basta alterar o valor depois do codigo.
Podemos tambem inserir novos valores para que possamos ter mais opções de priorização, basta inserir uma virgula no final do ultimo registro.
No exemplo abaixo vou inserir uma nova prioridade chamada de "my priority" em ingês e "minha prioridade" em português
$g_priority_enum_string = '10:none,20:low,30:normal,40:high,50:urgent,60:immediate,70:minha prioridade';
NÃO efetue esta alteração diretamente no arquivo config_default_inc.php. Copie a variável com seus valores e cole no arquivo config_inc.php.
Também teremos que inserir esta nova prioridade nos arquivos de idiomas. Altere em cada idioma em que a aplicação é utilizada.
Vá ate o diretório instalacao_mantis/lang e selecione o arqivo alvo da alteração (no exemplo será o string_english.txt) e localize a variável $s_priority_enum_string e insira o novo valor de prioridade, como no exemplo abaixo:
$s_priority_enum_string = =10:none,20:low,30:normal,40:high,50:urgent,60:immediate,70:my priority';
Efetue a mesma alteração no arquivo string_portuguese_brazil.txt para a mesma variável, ficando assim:
$s_priority_enum_string = '10:nenhuma,20:baixa,30:normal,40:alta,50:urgente,60:imediato,70:minha prioridade';
No cadastro do bug ou na visulização veremos que o novo valor está disponível para utilização e o mesmo aparece também no Sumário


Para finalizar a customização da prioridade podemos habilitar que seja apresentado nome da prioridade da lista de bugs. Efetuamos esta alteração inserindo a variável abaixo no arquivo config_inc.php:
$g_show_priority_text = ON;

Precauções
Uma vez inserido um novo valor à um campo não remova-o. Se fizermos isso o banco de dado traz somente a informação do código cadastrado referente a este dado, como na imagem abaixo. Note que é inserido dois "@" e entre eles o código do valor:

Como remover uma prioridade criada e atualizar para uma já existente?
Se somente removermos o código mais o texto da prioridade teremos o problema acima: tanto na lista de bugs, quanto no detalhe, sumário e histórico visualizaremos o valor que foi gravado no banco de dados.
Uma vez removido este valor de prioridade precisamos atualizar estes valores no banco de dados para que estes códigos não aparecam.
Você precisará definir para qual status o valor antigo passará a ter. No exemplo abaixo vou trocar todos os bugs da tabela de bugs e histórico com "my priority" (código 70) para "none" (código 10)
--alteracao na tabela 'mantis_bug_table' que guarda os bugs
UPDATE mantis_bug_table SET priority = 10 WHERE priority = 70
--alteracao na tabela 'mantis_bug_history_table' que guarda o histórico de alteracoes do bug
UPDATE mantis_bug_history_table SET old_value = 10 WHERE old_value = 70
Com estes dois comandos em SQL, que podem ser executados no seu editor de arquivos SQL preferido, alteram os valores da prioridade antiga para a escolhida, tanto no bug quanto em seu histórico.
Aprendemos aqui a inserir ou remover valores do campo de prioridade e voltar ao valor antigo ou para outro valor, caso necessário.
No proximo post sobre customização do Mantis veremos como alteramos o valor de Severidade.
Abcs!
Neste post vamos visulizar como alterar estes valores, bem como coloca-los para funcionar em qualquer idioma.
Apresento aqui uma forma de inserir ou até remover (não recomendado) determinado valores de campos.
Pré-Requisitos
- Utilizar qualquer versão do Mantis posterior à 1.0 (eu estou utilizando a versão 1.1.2)
- Faça um backup do banco e da pasta da aplicação (caso ocorra algum problema)
- SEMPRE copiar as variáveis que serão alteradas para o arquivo config_inc.php
Como o Mantis salva os dados de prioridade?
O Mantis não guarda nenhuma tabela para manter a relação de valores e codigo de cada campo. O que ele faz é salvar o codigo de cada valor configurado em suas propriedades. Podemos ir até o banco de dados e acessar a tabela mantis_bug_table e visualizar os dados contidos nela. Noque que o valore para a coluna priority foi salva como código, e não com o valor de cada campo:

Inserindo ou alterando valores de Prioridade
Segue abaixo a lista de valores bem como seu conteudo em inglês e português
| Código | Texto inglês | Texto português |
| 10 | none | nenhuma |
| 20 | low | baixa |
| 30 | normal | normal |
| 40 | high | alta |
| 50 | urgent | urgente |
| 60 | immediate | imediato |
Se entrarmos no arquivo config_default_inc.php e buscarmos pela variável $g_priority_enum_string veremos os valores:
$g_priority_enum_string = '10:none,20:low,30:normal,40:high,50:urgent,60:immediate';
Como podemos ver na tabela acima temos os codigos de cada valor que é salvo no banco de dados. Sendo assim basta alterar o valor depois do codigo.
Podemos tambem inserir novos valores para que possamos ter mais opções de priorização, basta inserir uma virgula no final do ultimo registro.
No exemplo abaixo vou inserir uma nova prioridade chamada de "my priority" em ingês e "minha prioridade" em português
$g_priority_enum_string = '10:none,20:low,30:normal,40:high,50:urgent,60:immediate,70:minha prioridade';
NÃO efetue esta alteração diretamente no arquivo config_default_inc.php. Copie a variável com seus valores e cole no arquivo config_inc.php.
Também teremos que inserir esta nova prioridade nos arquivos de idiomas. Altere em cada idioma em que a aplicação é utilizada.
Vá ate o diretório instalacao_mantis/lang e selecione o arqivo alvo da alteração (no exemplo será o string_english.txt) e localize a variável $s_priority_enum_string e insira o novo valor de prioridade, como no exemplo abaixo:
$s_priority_enum_string = =10:none,20:low,30:normal,40:high,50:urgent,60:immediate,70:my priority';
Efetue a mesma alteração no arquivo string_portuguese_brazil.txt para a mesma variável, ficando assim:
$s_priority_enum_string = '10:nenhuma,20:baixa,30:normal,40:alta,50:urgente,60:imediato,70:minha prioridade';
No cadastro do bug ou na visulização veremos que o novo valor está disponível para utilização e o mesmo aparece também no Sumário


Para finalizar a customização da prioridade podemos habilitar que seja apresentado nome da prioridade da lista de bugs. Efetuamos esta alteração inserindo a variável abaixo no arquivo config_inc.php:$g_show_priority_text = ON;

Precauções
Uma vez inserido um novo valor à um campo não remova-o. Se fizermos isso o banco de dado traz somente a informação do código cadastrado referente a este dado, como na imagem abaixo. Note que é inserido dois "@" e entre eles o código do valor:

Como remover uma prioridade criada e atualizar para uma já existente?
Se somente removermos o código mais o texto da prioridade teremos o problema acima: tanto na lista de bugs, quanto no detalhe, sumário e histórico visualizaremos o valor que foi gravado no banco de dados.
Uma vez removido este valor de prioridade precisamos atualizar estes valores no banco de dados para que estes códigos não aparecam.
Você precisará definir para qual status o valor antigo passará a ter. No exemplo abaixo vou trocar todos os bugs da tabela de bugs e histórico com "my priority" (código 70) para "none" (código 10)
--alteracao na tabela 'mantis_bug_table' que guarda os bugs
UPDATE mantis_bug_table SET priority = 10 WHERE priority = 70
--alteracao na tabela 'mantis_bug_history_table' que guarda o histórico de alteracoes do bug
UPDATE mantis_bug_history_table SET old_value = 10 WHERE old_value = 70
Com estes dois comandos em SQL, que podem ser executados no seu editor de arquivos SQL preferido, alteram os valores da prioridade antiga para a escolhida, tanto no bug quanto em seu histórico.
Aprendemos aqui a inserir ou remover valores do campo de prioridade e voltar ao valor antigo ou para outro valor, caso necessário.
No proximo post sobre customização do Mantis veremos como alteramos o valor de Severidade.
Abcs!
Assinar:
Postagens (Atom)
























