def preconditionLoggedIn(self): '''Logs in member if he is logged out, otherwise do nothing.''' selenium = self.selenium selenium.open("/") selenium.wait_for_page_to_load("30000") hasUsername = selenium.is_element_present("//meta[@name='wrook.username']") if not hasUsername: self.doMemberLogsInWithEmailAddress()
def browseToChangePasswordFromHome(): selenium.click("sidebarMenu-accountSettings") selenium.wait_for_page_to_load("30000") self.assertEqual("page-account-view", selenium.get_attribute("//body@id")) selenium.click("sidebarMenu-changePassword") selenium.wait_for_page_to_load("30000") self.assertEqual("page-account-changePassword", selenium.get_attribute("//body@id"))
def preconditionLoggedOut(self): '''Logs out the member if he is logged in, otherwise do nothing.''' selenium = self.selenium selenium.open("/") selenium.wait_for_page_to_load("30000") hasUsername = selenium.is_element_present("//meta[@name='wrook.username']") if hasUsername: self.doMemberLogout()
def login(self): selenium = self.selenium selenium.open("/") selenium.click("login") selenium.wait_for_page_to_load(5000) selenium.type("email", "*****@*****.**") selenium.click("submit-login") selenium.wait_for_page_to_load(5000)
def testMemberVisitHisPublicProfile(self): '''Member visits his public profile. (Via URL)''' selenium = self.selenium self.preconditionLoggedIn() selenium.open("/") selenium.wait_for_page_to_load("30000") selenium.click("sidebarMenu-publicProfile") selenium.wait_for_page_to_load("30000") self.assertEqual("page-members-stories", selenium.get_attribute("//body@id"))
def doMemberLogin(self, usernameOrEmail, password): selenium = self.selenium selenium.click("menu-login") selenium.wait_for_page_to_load("30000") selenium.type("username", usernameOrEmail) selenium.type("password", password) selenium.click("login") selenium.wait_for_page_to_load("30000") self.assertEqual("page-home-member", selenium.get_attribute("//body@id"))
def testHalfBakedEdition(self): ''' Tests the "Half Baked Edition" content page. Test includes acces via the main navigation path from the home page. ''' selenium = self.selenium selenium.open("/") selenium.wait_for_page_to_load("30000") selenium.click("link-halfBaked") selenium.wait_for_page_to_load("30000") self.assertEqual("page-about-HalfBakedEdition", selenium.get_attribute("//body@id"))
def testWhoIsBehindWrook(self): ''' Tests the "Who is behind Wrook" content page. Test includes acces via the main navigation path from the home page. ''' selenium = self.selenium selenium.open("/") selenium.wait_for_page_to_load("30000") selenium.click("menuWho") selenium.wait_for_page_to_load("30000") self.assertEqual("page-about-who", selenium.get_attribute("//body@id"))
def testGoogle__4(self): selenium = self.selenium selenium.open("http://www.google.com/webhp?hl=en") #Verifies that the title matches self.assertEqual ("Google", selenium.get_title()) selenium.type("q", "Selenium OpenQA") #Verifies that it can find the Selenium website self.assertEqual("Selenium OpenQA", selenium.get_value("q")) selenium.click("btnG") selenium.wait_for_page_to_load("5000") self.assertEqual("Selenium OpenQA - Google Search", selenium.get_title())
def testLinks(self): selenium = self.selenium selenium.open("/selenium-server/tests/html/test_click_page1.html") self.failUnless(selenium.get_text("link").find("Click here for next page") != -1, "link 'link' doesn't contain expected text") links = selenium.get_all_links() self.failUnless(len(links) > 3) self.assertEqual("linkToAnchorOnThisPage", links[3]) selenium.click("link") selenium.wait_for_page_to_load(5000) self.failUnless(selenium.get_location().endswith("/selenium-server/tests/html/test_click_page2.html")) selenium.click("previousPage") selenium.wait_for_page_to_load(5000) self.failUnless(selenium.get_location().endswith("/selenium-server/tests/html/test_click_page1.html"))
def testGoogle__4(self): selenium = self.selenium selenium.open("http://www.google.com/webhp?hl=en") #Verifies that the title matches self.assertEqual("Google", selenium.get_title()) selenium.type("q", "Selenium OpenQA") #Verifies that it can find the Selenium website self.assertEqual("Selenium OpenQA", selenium.get_value("q")) selenium.click("btnG") selenium.wait_for_page_to_load("5000") self.assertEqual("Selenium OpenQA - Google Search", selenium.get_title())
def Login(self): try: selenium.open(config_element.get("setting", "acs_address_sub")) selenium.type("id="+config_element.get("login", "username_id"), config_setting.get("setting", "username")) selenium.type("id="+config_element.get("login", "password_id"), config_setting.get("setting", "password")) selenium.click("id="+config_element.get("login", "login_Id")) selenium.wait_for_page_to_load( config_element.get("setting", "wait_time")) print "Login to the web - PASS" pyautogui.click(1000, 30) selenium.click( "xpath="+config_element.get("setting", "askey_logo")) print "Get the ASKEY image - PASS" except: raise Exception("No login to the web - FAIL")
def testMemberChangePassword(self): ''' Member logs in with the default password, changes his password, then logs out and logs back in with the new password. Afterward, the member changes back the password to the default. ''' def browseToChangePasswordFromHome(): selenium.click("sidebarMenu-accountSettings") selenium.wait_for_page_to_load("30000") self.assertEqual("page-account-view", selenium.get_attribute("//body@id")) selenium.click("sidebarMenu-changePassword") selenium.wait_for_page_to_load("30000") self.assertEqual("page-account-changePassword", selenium.get_attribute("//body@id")) selenium = self.selenium self.preconditionLoggedIn() browseToChangePasswordFromHome() selenium.type("oldPassword", self.testMemberPassword) selenium.type("newPassword", self.testMemberAlternatePassword) selenium.click("save") selenium.wait_for_page_to_load("30000") self.assertEqual("page-account-view", selenium.get_attribute("//body@id")) self.doMemberLogout() self.doMemberLogin(self.testMemberUsername, self.testMemberAlternatePassword) browseToChangePasswordFromHome() selenium.type("oldPassword", self.testMemberAlternatePassword) selenium.type("newPassword", self.testMemberPassword) selenium.click("save") selenium.wait_for_page_to_load("30000") self.assertEqual("page-account-view", selenium.get_attribute("//body@id")) self.doMemberLogout() self.doMemberLogin(self.testMemberUsername, self.testMemberPassword) def browseToChangePasswordFromHome(): selenium.click("sidebarMenu-accountSettings") selenium.wait_for_page_to_load("30000") self.assertEqual("page-account-view", selenium.get_attribute("//body@id")) selenium.click("sidebarMenu-changePassword") selenium.wait_for_page_to_load("30000") self.assertEqual("page-account-changePassword", selenium.get_attribute("//body@id"))
def testMemberViewsAndEditsHisAccountSettings(self): ''' Member views and edits his account settings. Persistance is tested by changing the about field twice and verifying the saved input ''' selenium = self.selenium self.preconditionLoggedIn() selenium.open("/") selenium.wait_for_page_to_load("30000") selenium.click("sidebarMenu-accountSettings") selenium.wait_for_page_to_load("30000") self.assertEqual("page-account-view", selenium.get_attribute("//body@id")) selenium.click("btnEditAccount") selenium.wait_for_page_to_load("30000") self.assertEqual("page-account-edit", selenium.get_attribute("//body@id")) selenium.type("About", "Bonjour!") selenium.click("btnSave") selenium.wait_for_page_to_load("30000") self.assertEqual("page-account-view", selenium.get_attribute("//body@id")) self.assertEqual("Bonjour!", selenium.get_text("valAbout")) selenium.click("btnEditAccount") selenium.wait_for_page_to_load("30000")
def testWrookIsOpenSource(self): ''' Tests the "Wrook is Open Source" content page. Test includes acces via the main navigation path from the home page. ''' selenium = self.selenium selenium.open("/") selenium.wait_for_page_to_load("30000") selenium.click("menu-openSourceLicense") selenium.wait_for_page_to_load("30000") self.assertEqual("page-about-OpenSourceLicense", selenium.get_attribute("//body@id")) selenium.click("menu-openSourceAttribution") selenium.wait_for_page_to_load("30000") self.assertEqual("page-about-openSourceAttribution", selenium.get_attribute("//body@id")) selenium.click("menu-CPAL10License") selenium.wait_for_page_to_load("30000") self.assertEqual("page-about-CPAL", selenium.get_attribute("//body@id"))
def doMemberLogout(self): selenium = self.selenium selenium.open("/Logout") selenium.wait_for_page_to_load("30000") self.assertEqual("page-home-visitor", selenium.get_attribute("//body@id"))
def del_program(self): selenium = self.selenium selenium.answer_on_next_prompt("fib1") selenium.click("del_button") selenium.wait_for_page_to_load(5000)
def get_details(self): selenium = self.selenium selenium.click('xpath=//a[text()="example"]') selenium.wait_for_page_to_load(5000)
def do_reset(self): selenium = self.selenium selenium.click("reset") selenium.wait_for_page_to_load(5000)