1 | /** |
---|
2 | * Autor : Alexandre Correia - alexandrecorreia@celepar.pr.gov.br |
---|
3 | * Data : 00/00/0000 |
---|
4 | * Caso de Teste : EL-943 : Adicionar Compromisso Com Repeticao Semanal |
---|
5 | * |
---|
6 | * Descrição do Processo de Teste Cadastro no TestLink - http://testlink.expressolivre.org/ |
---|
7 | * |
---|
8 | * AÇÕES DO PASSO |
---|
9 | * 1 . Usuário informa um título para o compromisso |
---|
10 | * 2 . Usuário seleciona opção para repetição semanal do compromisso; |
---|
11 | * 3 . Usuário marca opção de data final para a repetição do compromisso; |
---|
12 | * 4 . Usuário seleciona uma data final de repetição do compromisso, essa data deve ser superior a data de início; |
---|
13 | * 5 . Usuário pressiona opção para salvar o compromisso |
---|
14 | * 6 . Sistema retorna erro informando que os dias da semana em que o compromisso deve se repetir precisam ser informados |
---|
15 | * 7 . Usuário marca os dias da semana em que deseja que o compromisso se repita e salva compromisso |
---|
16 | * 8 . Sistema salva o compromisso e retorna para a tela da agenda de eventos utilizando a visualização padrão configurada nas preferências do Usuário |
---|
17 | * 9 . Sistema exibe o mesmo compromisso em todos os dias da semana selecionados pelo usuário mostrando o horário inicial e final, o título do compromisso e local e com um ícone especial indicando que se trata de um compromisso recorrente |
---|
18 | */ |
---|
19 | |
---|
20 | package br.gov.serpro.cte.agenda.casoteste; |
---|
21 | |
---|
22 | import java.util.GregorianCalendar; |
---|
23 | |
---|
24 | import org.junit.After; |
---|
25 | import org.junit.Before; |
---|
26 | import org.junit.Test; |
---|
27 | |
---|
28 | import br.gov.serpro.cte.agenda.Objetos.AdicionarCompromissoEL943.CampoRequisitado; |
---|
29 | import br.gov.serpro.cte.agenda.Objetos.AdicionarCompromissoEL943.Campo; |
---|
30 | import br.gov.serpro.cte.agenda.Objetos.AdicionarCompromissoEL943.Valor; |
---|
31 | import br.gov.serpro.cte.connection.DAOSelenium; |
---|
32 | import br.gov.serpro.cte.connection.LoginExpresso; |
---|
33 | |
---|
34 | import com.thoughtworks.selenium.SeleneseTestCase; |
---|
35 | |
---|
36 | public class Test_EL_943_AdicionarCompromissoComRepeticaoSemanal extends SeleneseTestCase |
---|
37 | { |
---|
38 | @Before |
---|
39 | public void setUp() throws Exception |
---|
40 | { |
---|
41 | String url = "https://cte.serpro.gov.br"; |
---|
42 | DAOSelenium conn = new DAOSelenium( "localhost", 4444, "*pifirefox", url); |
---|
43 | selenium = conn.newConnection(); |
---|
44 | } |
---|
45 | @Test |
---|
46 | public void testa() |
---|
47 | { |
---|
48 | // Logando No Expresso |
---|
49 | selenium.open("/login.php"); |
---|
50 | selenium.type("user", LoginExpresso.USER_EXPRESSO.getValue()); |
---|
51 | selenium.type("passwd", LoginExpresso.PASSWORD_EXPRESSO.getValue()); |
---|
52 | selenium.click("submitit"); |
---|
53 | selenium.waitForPageToLoad("30000"); |
---|
54 | selenium.click("//html/body/div[@id='toolbar']/table/tbody/tr/td[2]/table/tbody/tr/td[3]/a/img[@id='calendarid']"); |
---|
55 | |
---|
56 | // Data |
---|
57 | GregorianCalendar gc = new GregorianCalendar(); |
---|
58 | String Dia = String.valueOf( gc.get( gc.DAY_OF_MONTH ) ); |
---|
59 | Dia = ( Dia.length() > 1 ) ? Dia : "0"+Dia; |
---|
60 | |
---|
61 | String Mes = String.valueOf( gc.get( gc.MONTH ) + 1 ); |
---|
62 | |
---|
63 | String Ano = String.valueOf( gc.get( gc.YEAR ) ); |
---|
64 | |
---|
65 | //Adicionando um Evento |
---|
66 | selenium.open("/index.php?date=" + Ano + Mes + Dia + "&menuaction=calendar.uicalendar.week"); |
---|
67 | selenium.click("//img[@title='Nova Entrada']"); |
---|
68 | selenium.waitForPageToLoad("30000"); |
---|
69 | |
---|
70 | for( Campo cmp : Campo.values() ) |
---|
71 | { |
---|
72 | String cmpName = cmp.name(); |
---|
73 | |
---|
74 | if( cmp.getValue().indexOf("addSelection:") > -1 ) |
---|
75 | { |
---|
76 | AddSelection( cmp.getValue(), getValor( cmp.name() ) ); |
---|
77 | } |
---|
78 | |
---|
79 | if( cmp.getValue().indexOf("click:") > -1 ) |
---|
80 | { |
---|
81 | Click( cmp.getValue() ); |
---|
82 | } |
---|
83 | |
---|
84 | if( cmp.getValue().indexOf("select:") > -1 ) |
---|
85 | { |
---|
86 | Select( cmp.getValue(), getValor( cmp.name() ) ); |
---|
87 | } |
---|
88 | |
---|
89 | if( cmp.getValue().indexOf("type:") > -1 ) |
---|
90 | { |
---|
91 | Type( cmp.getValue(), getValor( cmp.name() ) ); |
---|
92 | } |
---|
93 | } |
---|
94 | |
---|
95 | selenium.waitForPageToLoad("15000"); |
---|
96 | |
---|
97 | // Verifica a Mensagem de Erro |
---|
98 | if( selenium.isTextPresent("Você deve informar os dias da semana para repetição do agendamento.") ) |
---|
99 | { |
---|
100 | for( CampoRequisitado cmpRe : CampoRequisitado.values() ) |
---|
101 | { |
---|
102 | String cmpName = cmpRe.name(); |
---|
103 | |
---|
104 | if( cmpRe.getValue().indexOf("click:") > -1 ) |
---|
105 | { |
---|
106 | Click( cmpRe.getValue() ); |
---|
107 | } |
---|
108 | } |
---|
109 | |
---|
110 | selenium.waitForPageToLoad("10000"); |
---|
111 | |
---|
112 | //Volta a visualização |
---|
113 | assertTrue(selenium.getHtmlSource().contains("<div id=\"divAppboxHeader\">Agenda de Eventos</div>")); |
---|
114 | |
---|
115 | } |
---|
116 | |
---|
117 | } |
---|
118 | |
---|
119 | public String getValor(String cmpName) |
---|
120 | { |
---|
121 | String _return = ""; |
---|
122 | |
---|
123 | for( Valor vlr : Valor.values() ) |
---|
124 | { |
---|
125 | String vlrName = vlr.name(); |
---|
126 | |
---|
127 | if( vlrName.equals( cmpName ) ) |
---|
128 | { |
---|
129 | _return = vlr.getValue(); |
---|
130 | } |
---|
131 | } |
---|
132 | |
---|
133 | return _return; |
---|
134 | } |
---|
135 | |
---|
136 | public void AddSelection( String locator, String optionLocator ) |
---|
137 | { |
---|
138 | selenium.addSelection( locator.substring( 13 , locator.length() ), optionLocator ); |
---|
139 | } |
---|
140 | |
---|
141 | public void Click( String locator ) |
---|
142 | { |
---|
143 | selenium.click( locator.substring( 6 , locator.length() ) ); |
---|
144 | } |
---|
145 | |
---|
146 | public void Select( String selectLocator, String optionLocator ) |
---|
147 | { |
---|
148 | selenium.select( selectLocator.substring( 7 , selectLocator.length() ), optionLocator ); |
---|
149 | } |
---|
150 | |
---|
151 | public void Type( String locator, String value ) |
---|
152 | { |
---|
153 | selenium.type( locator.substring( 5 , locator.length() ), value ); |
---|
154 | } |
---|
155 | |
---|
156 | @After |
---|
157 | public void tearDown() throws Exception |
---|
158 | { |
---|
159 | selenium.close(); |
---|
160 | } |
---|
161 | } |
---|