/** * Autor : Alexandre Correia - alexandrecorreia@celepar.pr.gov.br * Data : 00/00/0000 * Caso de Teste : EL-947 : Adicionar Compromisso com Data Final Anterior a Data Inicial * * Descrição do Processo de Teste Cadastro no TestLink - http://testlink.expressolivre.org/ * * AÇÕES DO PASSO * P01. Usuário informa um título para o compromisso; * P02. Usuário informa uma data inicial para o compromisso; * P03. Usuário informa uma data final para o compromisso menor que a data inicial; * P04. Usuário pressiona opção para salvar o compromisso; * P05. Sistema exibe uma mensagem de erro informando o Usuário que a data final não pode ser inferior a data inicial e não salva o compromisso; */ package br.gov.serpro.cte.agenda.casoteste; import java.util.GregorianCalendar; import org.junit.After; import org.junit.Before; import org.junit.Test; import br.gov.serpro.cte.agenda.Objetos.AdicionarCompromissoEL947.Campo; import br.gov.serpro.cte.agenda.Objetos.AdicionarCompromissoEL947.Valor; import br.gov.serpro.cte.connection.DAOSelenium; import br.gov.serpro.cte.connection.LoginExpresso; import com.thoughtworks.selenium.SeleneseTestCase; public class Test_EL_947_AdicionarCompromissoComDataFinalAnteriorDataInicial extends SeleneseTestCase { @Before public void setUp() throws Exception { String url = "https://cte.serpro.gov.br"; DAOSelenium conn = new DAOSelenium( "localhost", 4444, "*pifirefox", url); selenium = conn.newConnection(); } @Test public void testa() { // Logando No Expresso selenium.open("/login.php"); selenium.type("user", LoginExpresso.USER_EXPRESSO.getValue()); selenium.type("passwd", LoginExpresso.PASSWORD_EXPRESSO.getValue()); selenium.click("submitit"); selenium.waitForPageToLoad("30000"); selenium.click("//html/body/div[@id='toolbar']/table/tbody/tr/td[2]/table/tbody/tr/td[3]/a/img[@id='calendarid']"); // Data GregorianCalendar gc = new GregorianCalendar(); String Dia = String.valueOf( gc.get( gc.DAY_OF_MONTH ) ); Dia = ( Dia.length() > 1 ) ? Dia : "0"+Dia; String Mes = String.valueOf( gc.get( gc.MONTH ) + 1 ); String Ano = String.valueOf( gc.get( gc.YEAR ) ); //Adicionando um Evento selenium.open("/index.php?date=" + Ano + Mes + Dia + "&menuaction=calendar.uicalendar.week"); selenium.click("//img[@title='Nova Entrada']"); selenium.waitForPageToLoad("30000"); for( Campo cmp : Campo.values() ) { String cmpName = cmp.name(); if( cmp.getValue().indexOf("addSelection:") > -1 ) { AddSelection( cmp.getValue(), getValor( cmp.name() ) ); } if( cmp.getValue().indexOf("click:") > -1 ) { Click( cmp.getValue() ); } if( cmp.getValue().indexOf("select:") > -1 ) { Select( cmp.getValue(), getValor( cmp.name() ) ); } if( cmp.getValue().indexOf("type:") > -1 ) { Type( cmp.getValue(), getValor( cmp.name() ) ); } } selenium.waitForPageToLoad("15000"); // Verifica a Mensagem de Erro selenium.isTextPresent("Você informou uma data inválida."); } public String getValor(String cmpName) { String _return = ""; for( Valor vlr : Valor.values() ) { String vlrName = vlr.name(); if( vlrName.equals( cmpName ) ) { _return = vlr.getValue(); } } return _return; } public void AddSelection( String locator, String optionLocator ) { selenium.addSelection( locator.substring( 13 , locator.length() ), optionLocator ); } public void Click( String locator ) { selenium.click( locator.substring( 6 , locator.length() ) ); } public void Select( String selectLocator, String optionLocator ) { selenium.select( selectLocator.substring( 7 , selectLocator.length() ), optionLocator ); } public void Type( String locator, String value ) { selenium.type( locator.substring( 5 , locator.length() ), value ); } @After public void tearDown() throws Exception { selenium.close(); } }