Changeset 4864


Ignore:
Timestamp:
07/27/11 11:23:57 (10 years ago)
Author:
luiz-fernando
Message:

Ticket #1771 - Adicionado testes automatizados para modulo da agenda

Location:
devel/testlink/automation2.0
Files:
5 added
11 edited
1 moved

Legend:

Unmodified
Added
Removed
  • devel/testlink/automation2.0/[FUN03.2] - AdicionarCompromisso.xml

    r3799 r4864  
    33<suite name="[FUN03.2] Adicionar Compromisso" > 
    44 
    5   <parameter name="titulo"  value="[Selenium] Compromisso hoje!"/> 
    6   <parameter name="horaInicial"  value="16"/> 
    7   <parameter name="minutoInicial"  value="00"/> 
    8   <parameter name="horaFinal"  value="17"/> 
    9   <parameter name="minutoFinal"  value="30"/> 
    10   <test name="Agendamento data corrente"> 
    11     <classes> 
    12        <class name="org.expressolivre.cte.calendar.AdicionarCompromisso" /> 
    13     </classes> 
     5  <test name="Adicionar compromisso normal data corrente"> 
     6          <parameter name="tipo"  value="Normal"/> 
     7          <parameter name="titulo"  value="[Selenium] Compromisso normal data corrente"/> 
     8          <parameter name="horaInicial"  value="9"/> 
     9          <parameter name="minutoInicial"  value="00"/> 
     10          <parameter name="horaFinal"  value="9"/> 
     11          <parameter name="minutoFinal"  value="30"/> 
     12          <classes> 
     13             <class name="org.expressolivre.cte.calendar.AdicionarCompromissoTestCase" /> 
     14          </classes> 
    1415  </test> 
     16 
     17  <test name="Adicionar compromisso restrito data corrente"> 
     18          <parameter name="tipo"  value="Restrito"/> 
     19          <parameter name="titulo"  value="[Selenium] Compromisso restrito data corrente"/> 
     20          <parameter name="horaInicial"  value="10"/> 
     21          <parameter name="minutoInicial"  value="00"/> 
     22          <parameter name="horaFinal"  value="10"/> 
     23          <parameter name="minutoFinal"  value="30"/> 
     24          <classes> 
     25             <class name="org.expressolivre.cte.calendar.AdicionarCompromissoTestCase" /> 
     26          </classes> 
     27  </test> 
     28 
     29  <test name="Adicionar compromisso privado data corrente"> 
     30          <parameter name="tipo"  value="Normal"/> 
     31          <parameter name="titulo"  value="[Selenium] Compromisso privado data corrente"/> 
     32          <parameter name="horaInicial"  value="11"/> 
     33          <parameter name="minutoInicial"  value="00"/> 
     34          <parameter name="horaFinal"  value="11"/> 
     35          <parameter name="minutoFinal"  value="30"/> 
     36          <classes> 
     37             <class name="org.expressolivre.cte.calendar.AdicionarCompromissoTestCase" /> 
     38          </classes> 
     39  </test> 
     40  
     41  <test name="Exibir compromisso normal data corrente"> 
     42          <parameter name="tipo"  value="Normal"/> 
     43          <parameter name="titulo"  value="[Selenium] Compromisso normal data corrente"/> 
     44          <parameter name="inicio"  value="09:00"/> 
     45          <parameter name="fim"  value="09:30"/> 
     46          <parameter name="prioridade"  value="Normal"/> 
     47          <classes> 
     48             <class name="org.expressolivre.cte.calendar.ExibirCompromissoTestCase" /> 
     49          </classes> 
     50  </test> 
     51 
     52  <test name="Remover compromisso normal data corrente"> 
     53          <parameter name="titulo"  value="[Selenium] Compromisso normal data corrente"/> 
     54          <classes> 
     55             <class name="org.expressolivre.cte.calendar.RemoverCompromissoTestCase" /> 
     56          </classes> 
     57  </test> 
     58 
     59  <test name="Remover compromisso privado data corrente"> 
     60          <parameter name="titulo"  value="[Selenium] Compromisso privado data corrente"/> 
     61          <classes> 
     62             <class name="org.expressolivre.cte.calendar.RemoverCompromissoTestCase" /> 
     63          </classes> 
     64  </test> 
     65 
     66  <test name="Remover compromisso restrito data corrente"> 
     67          <parameter name="titulo"  value="[Selenium] Compromisso restrito data corrente"/> 
     68          <classes> 
     69             <class name="org.expressolivre.cte.calendar.RemoverCompromissoTestCase" /> 
     70          </classes> 
     71  </test> 
     72 
     73  <test name="Adicionar compromisso com hora final menor que inicial"> 
     74          <parameter name="tipo"  value="Normal"/> 
     75          <parameter name="titulo"  value="[Selenium] Compromisso hora final menor que inicial"/> 
     76          <parameter name="horaInicial"  value="10"/> 
     77          <parameter name="minutoInicial"  value="00"/> 
     78          <parameter name="horaFinal"  value="9"/> 
     79          <parameter name="minutoFinal"  value="30"/> 
     80          <classes> 
     81             <class name="org.expressolivre.cte.calendar.AdicionarCompromissoHoraFinalMenorHoraInicialTestCase" /> 
     82          </classes> 
     83  </test> 
     84  
     85 
     86 
     87  <test name="Adicionar compromisso com data final menor que inicial"> 
     88          <parameter name="tipo"  value="Normal"/> 
     89          <parameter name="titulo"  value="[Selenium] Compromisso data final menor que inicial"/> 
     90          <parameter name="horaInicial"  value="10"/> 
     91          <parameter name="minutoInicial"  value="00"/> 
     92          <parameter name="horaFinal"  value="9"/> 
     93          <parameter name="minutoFinal"  value="30"/> 
     94          <classes> 
     95             <class name="org.expressolivre.cte.calendar.AdicionarCompromissoDataFinalMenorDataInicialTestCase" /> 
     96          </classes> 
     97  </test> 
     98  
     99  
    15100   
    16101</suite> 
  • devel/testlink/automation2.0/src/test/java/org/expressolivre/cte/calendar/AdicionarCompromissoTestCase.java

    r3799 r4864  
    66import org.expressolivre.cte.common.BaseCalendarTestCase; 
    77import org.expressolivre.cte.pages.calendar.AppointmentPage; 
     8import org.testng.annotations.Optional; 
    89import org.testng.annotations.Parameters; 
    910import org.testng.annotations.Test; 
     
    1718 * testcase&id=EL-938 
    1819 *  
     20 * Caso de Teste: EL-939:Adicionar compromisso do tipo privado 
     21 *  
     22 * Link: http://testlink.expressolivre.org/linkto.php?tprojectPrefix=EL&item= 
     23 * testcase&id=EL-939 
     24 *  
     25 * Caso de Teste: EL-1265:Adicionar compromisso do tipo restrito 
     26 *  
     27 * Link: http://testlink.expressolivre.org/linkto.php?tprojectPrefix=EL&item= 
     28 * testcase&id=EL-1265 
     29 *  
    1930 * @author L.F.Estivalet (Serpro) 
    2031 *  
     
    2233 *  
    2334 */ 
    24 public class AdicionarCompromisso extends BaseCalendarTestCase { 
     35public class AdicionarCompromissoTestCase extends BaseCalendarTestCase { 
    2536 
    26         @Parameters({ "titulo", "horaInicial", "minutoInicial", "horaFinal", 
    27                         "minutoFinal" }) 
    28         @Test(dependsOnMethods = { "init" }) 
    29         public void test(String titulo, String horaInicial, String minutoInicial, 
    30                         String horaFinal, String minutoFinal) { 
     37        @Parameters({ "tipo", "titulo", "horaInicial", "minutoInicial", 
     38                        "horaFinal", "minutoFinal", "prioridade" }) 
     39        @Test 
     40        public void adicionarCompromissoDataCorrente( 
     41                        @Optional("Normal") String tipo, String titulo, String horaInicial, 
     42                        String minutoInicial, String horaFinal, String minutoFinal, 
     43                        @Optional("Normal") String prioridade) { 
    3144 
    3245                // Pega data corrente. 
     
    3548                SimpleDateFormat sdf2 = new SimpleDateFormat("dd/MM/yyyy"); 
    3649 
    37                 // Adiciona um compromisso para data atual. 
    38                 AppointmentPage ap = super.newAppointment(sdf.format(cal.getTime())); 
    39                 ap.setTitle(titulo); 
    40                 ap.setStartDate(sdf2.format(cal.getTime())); 
    41                 ap.setStartHour(horaInicial); 
    42                 ap.setStartMinute(minutoInicial); 
    43                 ap.setEndDate(sdf2.format(cal.getTime())); 
    44                 ap.setEndHour(horaFinal); 
    45                 ap.setEndMinute(minutoFinal); 
     50                AppointmentPage ap = super.adicionarCompromisso( 
     51                                sdf.format(cal.getTime()), tipo, titulo, 
     52                                sdf2.format(cal.getTime()), horaInicial, minutoInicial, 
     53                                sdf2.format(cal.getTime()), horaFinal, minutoFinal, prioridade); 
    4654 
    4755                ap.saveAppointment(); 
  • devel/testlink/automation2.0/src/test/java/org/expressolivre/cte/common/BaseCalendarTestCase.java

    r3799 r4864  
    66import org.expressolivre.cte.pages.common.HomePage; 
    77import org.openqa.selenium.support.PageFactory; 
    8 import org.testng.annotations.Test; 
     8import org.testng.annotations.BeforeMethod; 
    99 
    1010/** 
     
    2424         * inicializar componentes da pagina. 
    2525         */ 
    26         @Test 
     26        @BeforeMethod 
    2727        public void init() { 
    2828                HomePage hp = PageFactory.initElements(driver, HomePage.class); 
     
    4040                return PageFactory.initElements(driver, AppointmentPage.class); 
    4141        } 
     42 
     43        public AppointmentPage adicionarCompromisso(String data, String tipo, 
     44                        String titulo, String dataInicial, String horaInicial, 
     45                        String minutoInicial, String dataFinal, String horaFinal, 
     46                        String minutoFinal, String prioridade) { 
     47 
     48                AppointmentPage ap = newAppointment(data); 
     49                ap.setType(tipo); 
     50                ap.setTitle(titulo); 
     51                ap.setStartDate(dataInicial); 
     52                ap.setStartHour(horaInicial); 
     53                ap.setStartMinute(minutoInicial); 
     54                ap.setEndDate(dataFinal); 
     55                ap.setEndHour(horaFinal); 
     56                ap.setEndMinute(minutoFinal); 
     57                ap.setPriority(prioridade); 
     58 
     59                return ap; 
     60        } 
    4261} 
  • devel/testlink/automation2.0/src/test/java/org/expressolivre/cte/common/BaseEmailTestCase.java

    r4527 r4864  
    22 
    33import org.expressolivre.cte.pages.common.HomePage; 
     4import org.expressolivre.cte.pages.email.MailAdminPreferencesPage; 
    45import org.expressolivre.cte.pages.email.MailPage; 
     6import org.expressolivre.cte.pages.email.MailPreferencesPage; 
    57import org.openqa.selenium.support.PageFactory; 
    68import org.testng.annotations.BeforeMethod; 
     
    3032        } 
    3133 
     34        /** 
     35         * Abre pagina de preferencias do modulo ExpressoMail 
     36         *  
     37         * @return 
     38         */ 
     39        public MailPreferencesPage openEmailPreferencesPage() { 
     40                driver.get(URL_PREFERENCES_EMAIL); 
     41                return PageFactory.initElements(driver, MailPreferencesPage.class); 
     42        } 
     43 
     44        /** 
     45         * Abre pagina de preferencias administrativas do modulo ExpressoMail. 
     46         *  
     47         * @return 
     48         */ 
     49        public MailAdminPreferencesPage openEmailAdminPreferencesPage() { 
     50                driver.get(URL_PREFERENCES_EMAIL); 
     51                return PageFactory.initElements(driver, MailAdminPreferencesPage.class); 
     52        } 
     53 
     54        /** 
     55         * Abre pagina de preferencias administrativas do modulo ExpressoMail. 
     56         *  
     57         * @return 
     58         */ 
     59        public MailAdminPreferencesPage openEmailAdminDefaultPreferencesPage() { 
     60                driver.get(URL_DEFAULT_PREFERENCES_EMAIL); 
     61                return PageFactory.initElements(driver, MailAdminPreferencesPage.class); 
     62        } 
     63 
     64        /** 
     65         * Abre pagina de preferencias administrativas do modulo ExpressoMail. 
     66         *  
     67         * @return 
     68         */ 
     69        public MailAdminPreferencesPage openEmailAdminForcedPreferencesPage() { 
     70                driver.get(URL_FORCED_PREFERENCES_EMAIL); 
     71                return PageFactory.initElements(driver, MailAdminPreferencesPage.class); 
     72        } 
     73 
    3274} 
  • devel/testlink/automation2.0/src/test/java/org/expressolivre/cte/common/BaseTestCase.java

    r4780 r4864  
    55import org.expressolivre.cte.pages.common.LoginPage; 
    66import org.expressolivre.cte.pages.common.PreferencesPage; 
    7 import org.expressolivre.cte.pages.email.MailAdminPreferencesPage; 
    8 import org.expressolivre.cte.pages.email.MailPreferencesPage; 
    97import org.openqa.selenium.By; 
    108import org.openqa.selenium.WebDriver; 
     
    3735        @BeforeSuite 
    3836        public void beforeSuite() { 
     37                // Use code below to run through a proxy. 
     38                // Value for network.proxy.http_port should be integer (no quotes should 
     39                // be used) and network.proxy.type should be set as 1 (ProxyType.MANUAL, 
     40                // Manual proxy settings) 
     41                // FirefoxProfile profile = new FirefoxProfile(); 
     42                // profile.setPreference("network.proxy.type", 1); 
     43                // profile.setPreference("network.proxy.http", "10.200.113.61"); 
     44                // profile.setPreference("network.proxy.http_port", 3128); 
     45                // driver = new FirefoxDriver(profile); 
     46 
    3947                driver = new FirefoxDriver(); 
    4048                driver.get(URL); 
     
    7482                driver.get(URL_PREFERENCES); 
    7583                return PageFactory.initElements(driver, PreferencesPage.class); 
    76         } 
    77  
    78         /** 
    79          * Abre pagina de preferencias do modulo ExpressoMail 
    80          *  
    81          * @return 
    82          */ 
    83         public MailPreferencesPage openEmailPreferencesPage() { 
    84                 driver.get(URL_PREFERENCES_EMAIL); 
    85                 return PageFactory.initElements(driver, MailPreferencesPage.class); 
    86         } 
    87  
    88         /** 
    89          * Abre pagina de preferencias administrativas do modulo ExpressoMail. 
    90          *  
    91          * @return 
    92          */ 
    93         public MailAdminPreferencesPage openEmailAdminPreferencesPage() { 
    94                 driver.get(URL_PREFERENCES_EMAIL); 
    95                 return PageFactory.initElements(driver, MailAdminPreferencesPage.class); 
    96         } 
    97  
    98         /** 
    99          * Abre pagina de preferencias administrativas do modulo ExpressoMail. 
    100          *  
    101          * @return 
    102          */ 
    103         public MailAdminPreferencesPage openEmailAdminDefaultPreferencesPage() { 
    104                 driver.get(URL_DEFAULT_PREFERENCES_EMAIL); 
    105                 return PageFactory.initElements(driver, MailAdminPreferencesPage.class); 
    106         } 
    107  
    108         /** 
    109          * Abre pagina de preferencias administrativas do modulo ExpressoMail. 
    110          *  
    111          * @return 
    112          */ 
    113         public MailAdminPreferencesPage openEmailAdminForcedPreferencesPage() { 
    114                 driver.get(URL_FORCED_PREFERENCES_EMAIL); 
    115                 return PageFactory.initElements(driver, MailAdminPreferencesPage.class); 
    11684        } 
    11785 
  • devel/testlink/automation2.0/src/test/java/org/expressolivre/cte/email/MailAdminPreferencesTestCase.java

    r4627 r4864  
    55 
    66import org.apache.commons.lang.StringUtils; 
    7 import org.expressolivre.cte.common.BaseTestCase; 
     7import org.expressolivre.cte.common.BaseEmailTestCase; 
    88import org.expressolivre.cte.common.Config; 
    99import org.expressolivre.cte.pages.email.MailAdminPreferencesPage; 
     
    1616 *  
    1717 */ 
    18 public class MailAdminPreferencesTestCase extends BaseTestCase { 
     18public class MailAdminPreferencesTestCase extends BaseEmailTestCase { 
    1919 
    2020        /** 
     
    3939        } 
    4040 
    41         private void setPreferences(MailAdminPreferencesPage prefs, 
    42                         String pref) throws IllegalArgumentException, 
    43                         IllegalAccessException, InvocationTargetException { 
     41        private void setPreferences(MailAdminPreferencesPage prefs, String pref) 
     42                        throws IllegalArgumentException, IllegalAccessException, 
     43                        InvocationTargetException { 
    4444                // Percorre todos os metodos "setters" da classe 
    4545                // ExpressoMailAdminPreferencesPage para mudar o valor de cada 
  • devel/testlink/automation2.0/src/test/java/org/expressolivre/cte/email/MailPreferencesTestCase.java

    r4780 r4864  
    66 
    77import org.apache.commons.lang.StringUtils; 
    8 import org.expressolivre.cte.common.BaseTestCase; 
     8import org.expressolivre.cte.common.BaseEmailTestCase; 
    99import org.expressolivre.cte.common.Config; 
    1010import org.expressolivre.cte.common.IOUtil; 
     
    1919 *  
    2020 */ 
    21 public class MailPreferencesTestCase extends BaseTestCase { 
     21public class MailPreferencesTestCase extends BaseEmailTestCase { 
    2222 
    2323        /** 
  • devel/testlink/automation2.0/src/test/java/org/expressolivre/cte/email/filtro/ExcluirFiltroForaDoEscritorioTestCase.java

    r4780 r4864  
    2424        @Test 
    2525        public void excluirFiltroForaDoEscritorio() throws Exception { 
     26                mp.assertMessage(MSG_EMAIL_FILTRO_FORA_ESCRITORIO_ATIVADO); 
     27 
    2628                MailFilterPage mfp = mp.editFilter(); 
    2729                mfp.selectOutOfOfficeFilterRule(); 
     
    3032                // Garantir que a regra foi excluida e nao aparece na tela. 
    3133                Assert.assertFalse(mfp.isElementPresent(By.id("out_0"))); 
     34 
     35                mp.waitLoading(); 
     36 
     37                mp.isNotDisplayed(mp.waitFindElement(By.id("em_div_write_msg"), 5000, 
     38                                1000)); 
     39 
    3240        } 
    33  
    3441} 
  • devel/testlink/automation2.0/src/test/java/org/expressolivre/cte/pages/calendar/AppointmentPage.java

    r3782 r4864  
    55import org.openqa.selenium.WebElement; 
    66import org.openqa.selenium.support.FindBy; 
    7  
    87 
    98/** 
     
    1514public class AppointmentPage extends Page { 
    1615 
     16        /** Mensagens de validacao do formulario. */ 
     17        @FindBy(id = "formStatus") 
     18        private WebElement formStatus; 
     19 
    1720        /** Tipo do evento. */ 
    1821        @FindBy(id = "cal[type]") 
     
    106109 
    107110        /** 
     111         * @return Retorna o texto de validacao do formulario. 
     112         */ 
     113        public String getFormStatus() { 
     114                return this.formStatus.getText(); 
     115        } 
     116 
     117        /** 
    108118         * @param type 
    109119         *            the type to set 
  • devel/testlink/automation2.0/src/test/java/org/expressolivre/cte/pages/calendar/CalendarPage.java

    r3782 r4864  
    77import org.openqa.selenium.WebElement; 
    88import org.openqa.selenium.support.FindBy; 
    9  
     9import org.openqa.selenium.support.PageFactory; 
    1010 
    1111/** 
     
    2626        } 
    2727 
    28         public void openTodayView() { 
     28        public CalendarTodayViewPage openTodayView() { 
    2929                super.clickElement(By 
    3030                                .xpath("//table[@id='calendar_head_table']/tbody/tr/td[2]/a/img")); 
     31                return PageFactory.initElements(driver, CalendarTodayViewPage.class); 
    3132        } 
    3233 
    3334        public void openAppointmentPage(String date) { 
    34                 System.out.println(Constants.URL 
    35                                 + "/index.php?menuaction=calendar.uicalendar.add&date=" + date); 
    3635                driver.get(Constants.URL 
    3736                                + "/index.php?menuaction=calendar.uicalendar.add&date=" + date); 
    3837        } 
     38 
     39        public AppointmentViewPage openAppointmentViewPage(String id) { 
     40                driver.get(Constants.URL 
     41                                + "/index.php?menuaction=calendar.uicalendar.view&cal_id=" + id); 
     42                return PageFactory.initElements(driver, AppointmentViewPage.class); 
     43        } 
    3944} 
  • devel/testlink/automation2.0/src/test/java/org/expressolivre/cte/pages/calendar/CalendarTodayViewPage.java

    r3782 r4864  
    33import org.expressolivre.cte.pages.common.Page; 
    44import org.openqa.selenium.WebDriver; 
    5  
    65 
    76/** 
     
    1817        } 
    1918 
     19        /** 
     20         * Procura o "id" do compromisso baseado no titulo do mesmo. 
     21         *  
     22         * @param title 
     23         *            Titulo do compromisso. 
     24         * @return "id" do compromisso. 
     25         */ 
     26        public String getAppointmentId(String title) { 
     27                String source = driver.getPageSource(); 
     28                int i = source.indexOf("\"title\":\"" + title); 
     29                int j = source.indexOf("\"id\":", i); 
     30                return source.substring(j + 5, source.indexOf(",", j)); 
     31        } 
    2032} 
  • devel/testlink/automation2.0/src/test/resources/config.properties

    r4780 r4864  
    99 
    1010# Usuario normal 
    11 #url=https://cte2.serpro.gov.br 
     11url=https://cte2.serpro.gov.br 
     12user=88758559000 
     13passwd=serpro 
     14 
     15#url=https://10.200.113.112/ 
    1216#user=88758559000 
    13 #passwd=serpro 
    14  
    15 url=https://10.200.113.112/ 
    16 user=88758559000 
    17 passwd=senha123 
     17#passwd=senha123 
    1818 
    1919 
Note: See TracChangeset for help on using the changeset viewer.