示例#1
0
class LoginTests(unittest.TestCase):

    @pytest.fixture(autouse=True)
    def classSetup(self, oneTimeSetUp):
        self.lp = LoginPage(self.driver)
        self.ts = T_estStatus(self.driver)
        self.rc = RegisterCoursesPage(self.driver)

    @pytest.mark.run(order=2)
    def test_validLogin(self):
        self.lp.login("*****@*****.**", "abcabc")
        result1 = self.lp.verifyLoginTitle()
        self.ts.mark(result1, "Title verified")
        result2 = self.lp.verifyLoginSuccessful()
        self.ts.markFinal("test_validLogin", result2, "Login was successful")
        self.rc.logOut()
        self.rc.verifyUserLogOut()

    @pytest.mark.run(order=1)
    def test_invalidLogin(self):
        self.rc.logOut()
        self.lp.login("*****@*****.**", "abcabcabc")
        result = self.lp.verifyLoginFailed()
        assert result == True
        self.lp.clearEmailField()
        self.lp.clearPasswordField()
class RegisterCoursesTests(unittest.TestCase):
    @pytest.fixture(autouse=True)
    def classSetup(self, oneTimeSetUp):
        self.courses = RegisterCoursesPage(self.driver)
        self.ts = T_estStatus(self.driver)
        self.lg = LoginPage(self.driver)
        self.util = Util()

    @pytest.mark.run(order=1)
    @data(("JavaScript", "EG", "121212"), ("JavaS", "IR", "101010"))
    @unpack
    def test_invalidEnrollment(self, course_name, country_name, postal_code):
        self.lg.login("*****@*****.**", "abcabc")
        self.courses.clickAllCoursesButton()
        self.courses.enterCourseName(courseName=course_name)
        self.courses.clickJavaScriptCourse()
        self.courses.scrollToBottom()
        self.courses.clickEnrollButton()
        self.courses.scrollToBottom()
        self.courses.selectCountryDropDown(countryName=country_name)
        self.courses.enterPostalCode(code=postal_code)
        self.courses.clickSubmitButton()
        self.courses.scrollToTop()
        self.util.sleep(3)
        result1 = self.courses.verifyTextOnPage(
            "Sorry, there was an error completing your purchase -- please try again."
        )
        self.ts.mark(result1, "Text verified")
        self.driver.back()
        self.courses.logOut()
        result2 = self.courses.verifyUserLogOut()
        self.ts.markFinal("test_invalidEnrollment", result2,
                          "logout successful")
        self.util.sleep(2)
示例#3
0
def oneTimeSetUp(request, browser):
    print("running one time setUp")
    wtf = WebDriverFactory(browser)
    driver = wtf.getWebDriverInstance()
    lp = LoginPage(driver)
    lp.login("*****@*****.**", "abcabc")

    if request.cls:
        request.cls.driver = driver

    yield driver
    coursesPage = RegisterCoursesPage(driver)
    coursesPage.logOut()
    driver.quit()
    print("Running one time teardown")