From: jordan Date: Fri, 29 Apr 2011 13:37:50 +0000 (+0000) Subject: adding some Selenium tests to the default skin X-Git-Tag: live~304 X-Git-Url: https://git.openstreetmap.org./osqa.git/commitdiff_plain/a4fc326084281fd79e04750bc55174b5280d761c adding some Selenium tests to the default skin git-svn-id: http://svn.osqa.net/svnroot/osqa/trunk@1009 0cfe37f9-358a-4d5e-be75-b63607b5c754 --- diff --git a/forum/skins/default/tests/__init__.py b/forum/skins/default/tests/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/forum/skins/default/tests/faq_page.py b/forum/skins/default/tests/faq_page.py new file mode 100644 index 0000000..573ed4e --- /dev/null +++ b/forum/skins/default/tests/faq_page.py @@ -0,0 +1,21 @@ +from selenium import selenium +import unittest, time, re + +class faq_page(unittest.TestCase): + def setUp(self): + self.verificationErrors = [] + self.selenium = selenium("localhost", 4444, "*chrome", "http://127.0.0.1:8000/") + self.selenium.start() + + def test_faq_page(self): + sel = self.selenium + sel.open("/faq/") + try: self.failUnless(sel.is_text_present("FAQ")) + except AssertionError, e: self.verificationErrors.append(str(e)) + + def tearDown(self): + self.selenium.stop() + self.assertEqual([], self.verificationErrors) + +if __name__ == "__main__": + unittest.main() diff --git a/forum/skins/default/tests/registration_login.py b/forum/skins/default/tests/registration_login.py new file mode 100644 index 0000000..181d6e1 --- /dev/null +++ b/forum/skins/default/tests/registration_login.py @@ -0,0 +1,43 @@ +from selenium import selenium +import unittest, time, re +import random + +class registration_login(unittest.TestCase): + def setUp(self): + rand_number = random.randrange(1, 10000) + self.verificationErrors = [] + self.account_name = 'TestAccount%d' % rand_number + self.account_email = 'test_account_%d@example.com' % rand_number + self.selenium = selenium("localhost", 4444, "*chrome", "http://127.0.0.1:8000/") + self.selenium.start() + + def test_registration_login(self): + sel = self.selenium + sel.open("/account/signin/") + sel.click("link=Create account") + sel.wait_for_page_to_load("30000") + sel.type("id_username", "%s" % self.account_name) + sel.type("id_email", "%s" % self.account_email) + sel.type("id_password1", "test") + sel.type("id_password2", "test") + sel.click("bnewaccount") + sel.wait_for_page_to_load("30000") + sel.click("link=logout") + sel.wait_for_page_to_load("30000") + sel.click("btLogout") + sel.wait_for_page_to_load("30000") + sel.click("link=login") + sel.wait_for_page_to_load("30000") + sel.type("id_username", "%s" % self.account_name) + sel.type("id_password", "test") + sel.click("blogin") + sel.wait_for_page_to_load("30000") + try: self.failUnless(sel.is_element_present("link=%s" % self.account_name)) + except AssertionError, e: self.verificationErrors.append(str(e)) + + def tearDown(self): + self.selenium.stop() + self.assertEqual([], self.verificationErrors) + +if __name__ == "__main__": + unittest.main() diff --git a/forum/skins/default/tests/tags_page.py b/forum/skins/default/tests/tags_page.py new file mode 100644 index 0000000..38e3550 --- /dev/null +++ b/forum/skins/default/tests/tags_page.py @@ -0,0 +1,27 @@ +from selenium import selenium +import unittest, time, re + +class tags_page(unittest.TestCase): + def setUp(self): + self.verificationErrors = [] + self.selenium = selenium("localhost", 4444, "*chrome", "http://127.0.0.1:8000/") + self.selenium.start() + + def test_tags_page(self): + sel = self.selenium + sel.open("/") + sel.click("nav_tags") + sel.wait_for_page_to_load("30000") + try: self.failUnless(sel.is_text_present("Tag list")) + except AssertionError, e: self.verificationErrors.append(str(e)) + try: self.failUnless(sel.is_text_present("by name")) + except AssertionError, e: self.verificationErrors.append(str(e)) + try: self.failUnless(sel.is_text_present("by popularity")) + except AssertionError, e: self.verificationErrors.append(str(e)) + + def tearDown(self): + self.selenium.stop() + self.assertEqual([], self.verificationErrors) + +if __name__ == "__main__": + unittest.main() diff --git a/forum/skins/default/tests/users_page.py b/forum/skins/default/tests/users_page.py new file mode 100644 index 0000000..b4ff345 --- /dev/null +++ b/forum/skins/default/tests/users_page.py @@ -0,0 +1,33 @@ +from selenium import selenium +import unittest, time, re + +class users_page(unittest.TestCase): + def setUp(self): + self.verificationErrors = [] + self.selenium = selenium("localhost", 4444, "*chrome", "http://127.0.0.1:8000/") + self.selenium.start() + + def test_users_page(self): + sel = self.selenium + sel.open("/") + sel.click("nav_users") + sel.wait_for_page_to_load("30000") + try: self.failUnless(sel.is_text_present("Users")) + except AssertionError, e: self.verificationErrors.append(str(e)) + sel.click("nav_users") + sel.wait_for_page_to_load("30000") + try: self.failUnless(sel.is_text_present("karma")) + except AssertionError, e: self.verificationErrors.append(str(e)) + try: self.failUnless(sel.is_text_present("recent")) + except AssertionError, e: self.verificationErrors.append(str(e)) + try: self.failUnless(sel.is_text_present("oldest")) + except AssertionError, e: self.verificationErrors.append(str(e)) + try: self.failUnless(sel.is_text_present("by username")) + except AssertionError, e: self.verificationErrors.append(str(e)) + + def tearDown(self): + self.selenium.stop() + self.assertEqual([], self.verificationErrors) + +if __name__ == "__main__": + unittest.main()