source: devel/testlink/automation2.0/src/test/java/org/expressolivre/cte/common/BaseTestCase.java @ 3782

Revision 3782, 2.3 KB checked in by luiz-fernando, 13 years ago (diff)

Ticket #1402 - Mudança no nome dos pacotes das classes

Line 
1package org.expressolivre.cte.common;
2
3import org.expressolivre.cte.pages.common.LoginPage;
4import org.expressolivre.cte.pages.common.PreferencesPage;
5import org.openqa.selenium.By;
6import org.openqa.selenium.WebDriver;
7import org.openqa.selenium.firefox.FirefoxDriver;
8import org.openqa.selenium.support.PageFactory;
9import org.testng.annotations.AfterClass;
10import org.testng.annotations.AfterSuite;
11import org.testng.annotations.BeforeClass;
12import org.testng.annotations.BeforeSuite;
13
14
15/**
16 * @author L.F.Estivalet (Serpro)
17 *
18 *         Created on Jan 4, 2011 at 3:53:19 PM
19 *
20 */
21public class BaseTestCase implements Constants {
22
23        /** Driver utilizado para rodar os testes. */
24        protected static WebDriver driver;
25
26        /**
27         * Antes de comecar a suite de testes abrir o navegador.
28         *
29         * TODO Parametrizar o driver de forma a abrir outros navegadores como o
30         * Internet Explorer por exemplo.
31         */
32        @BeforeSuite
33        public void beforeSuite() {
34                driver = new FirefoxDriver();
35                driver.get(URL);
36        }
37
38        /**
39         * Antes de cada classe de teste o login na aplicacao eh realizado.
40         */
41        @BeforeClass
42        public void login() {
43                LoginPage page = PageFactory.initElements(driver, LoginPage.class);
44                page.login(USER, PASS);
45        }
46
47        /**
48         * Ao final de cada classe de teste o logout na aplicacao eh realizado.
49         */
50        @AfterClass
51        public void logout() {
52                driver.findElement(By.id("logout_id")).click();
53        }
54
55        /**
56         * Ao final da suite de testes fecha-se o driver (navegador).
57         */
58        @AfterSuite
59        public void afterSuite() {
60                driver.close();
61        }
62
63        /**
64         * Abre a pagina de preferencias do usuario.
65         *
66         * @return
67         */
68        public PreferencesPage openPreferencesPage() {
69                driver.get(URL_PREFERENCES);
70                return PageFactory.initElements(driver, PreferencesPage.class);
71        }
72
73        /**
74         * TODO Rever esse metodo. Foi o unico jeito que consegui fazer pegar o
75         * numero total de mensagens importantes. O metodo apenas aguarda 5 segundos
76         * antes de continuar a execucao.
77         *
78         * @throws Exception
79         *
80         * @see br.gov.serpro.cte.email.listar.ListarEmailsImportantesTestCase
81         */
82        public void dummyWait() throws Exception {
83                dummyWait(5);
84        }
85
86        /**
87         * @param seconds
88         * @throws Exception
89         */
90        public void dummyWait(int seconds) throws Exception {
91                for (int second = 0;; second++) {
92                        if (second >= seconds) {
93                                System.out.println("timeout");
94                                return;
95                        }
96                        Thread.sleep(1000);
97                }
98
99        }
100
101}
Note: See TracBrowser for help on using the repository browser.