summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app/test/test_add_word.py107
-rw-r--r--app/test/test_add_word_and_essay_does_not_change.py119
-rw-r--r--app/test/test_login.py83
-rw-r--r--app/test/test_next_essay.py77
-rw-r--r--app/test/test_signup.py47
5 files changed, 219 insertions, 214 deletions
diff --git a/app/test/test_add_word.py b/app/test/test_add_word.py
index c8d6d57..9fe8741 100644
--- a/app/test/test_add_word.py
+++ b/app/test/test_add_word.py
@@ -16,59 +16,60 @@ def has_punctuation(s):
return [c for c in s if c in string.punctuation] != []
def test_add_word():
- driver.get(HOME_PAGE + 'logout')
- assert 'English Pal -' in driver.page_source
-
- # login
- elem = driver.find_element_by_link_text('登录')
- elem.click()
-
- uname = 'lanhui'
- password = 'l0ve1t'
- elem = driver.find_element_by_name('username')
- elem.send_keys(uname)
-
- elem = driver.find_element_by_name('password')
- elem.send_keys(password)
+ try:
+ driver.get(HOME_PAGE)
+ assert 'English Pal -' in driver.page_source
- elem = driver.find_element_by_xpath('//form[1]/p[3]/input[1]') # 找到登录按钮
- elem.click()
-
- assert 'EnglishPal Study Room for ' + uname in driver.title
-
- # get essay content
- driver.save_screenshot('./app/test/test_add_word_pic0.png')
- elem = driver.find_element_by_id('text-content')
- essay_content = elem.text
-
- elem = driver.find_element_by_id('selected-words')
- word = random.choice(essay_content.split())
- while 'font>' in word or 'br>' in word or 'p>' in word or len(word) < 5 or has_punctuation(word):
- word = random.choice(essay_content.split())
- elem.send_keys(word)
- driver.save_screenshot('./app/test/test_add_word_pic1.png')
- elem = driver.find_element_by_xpath('//form[2]//input[1]') # 找到get所有词频按钮
- elem.click()
-
- elems = driver.find_elements_by_xpath("//input[@type='checkbox']")
- for elem in elems:
- if elem.get_attribute('name') == 'marked':
+ # login
+ elem = driver.find_element_by_link_text('登录')
+ elem.click()
+
+ uname = 'lanhui'
+ password = 'l0ve1t'
+ elem = driver.find_element_by_name('username')
+ elem.send_keys(uname)
+
+ elem = driver.find_element_by_name('password')
+ elem.send_keys(password)
+
+ elem = driver.find_element_by_xpath('//form[1]/p[3]/input[1]') # 找到登录按钮
+ elem.click()
+
+ assert 'EnglishPal Study Room for ' + uname in driver.title
+
+ # get essay content
+ driver.save_screenshot('./app/test/test_add_word_pic0.png')
+ elem = driver.find_element_by_id('text-content')
+ essay_content = elem.text
+
+ elem = driver.find_element_by_id('selected-words')
+ word = random.choice(essay_content.split())
+ while 'font>' in word or 'br>' in word or 'p>' in word or len(word) < 5 or has_punctuation(word):
+ word = random.choice(essay_content.split())
+ elem.send_keys(word)
+ driver.save_screenshot('./app/test/test_add_word_pic1.png')
+ elem = driver.find_element_by_xpath('//form[2]//input[1]') # 找到get所有词频按钮
elem.click()
-
- driver.save_screenshot('./app/test/test_add_word_pic2.png')
- elem = driver.find_element_by_xpath('//form[1]/input[1]') # 找到加入我的生词簿按钮
- elem.click()
-
- elems = driver.find_elements_by_xpath("//p[@id='new-word']")
- elems[0].location_once_scrolled_into_view
- driver.save_screenshot('./app/test/test_add_word_pic3.png')
-
- found = 0
- for elem in elems:
- if word in elem.text:
- found = 1
- break
-
- assert found == 1
- driver.quit()
+ elems = driver.find_elements_by_xpath("//input[@type='checkbox']")
+ for elem in elems:
+ if elem.get_attribute('name') == 'marked':
+ elem.click()
+
+ driver.save_screenshot('./app/test/test_add_word_pic2.png')
+ elem = driver.find_element_by_xpath('//form[1]/input[1]') # 找到加入我的生词簿按钮
+ elem.click()
+
+ elems = driver.find_elements_by_xpath("//p[@id='new-word']")
+ elems[0].location_once_scrolled_into_view
+ driver.save_screenshot('./app/test/test_add_word_pic3.png')
+
+ found = 0
+ for elem in elems:
+ if word in elem.text:
+ found = 1
+ break
+
+ assert found == 1
+ finally:
+ driver.quit()
diff --git a/app/test/test_add_word_and_essay_does_not_change.py b/app/test/test_add_word_and_essay_does_not_change.py
index 2a1e503..0913be3 100644
--- a/app/test/test_add_word_and_essay_does_not_change.py
+++ b/app/test/test_add_word_and_essay_does_not_change.py
@@ -16,63 +16,64 @@ def has_punctuation(s):
return [c for c in s if c in string.punctuation] != []
def test_add_word_and_essay_does_not_change():
- driver.get(HOME_PAGE + 'logout')
- assert 'English Pal -' in driver.page_source
-
- # login
- elem = driver.find_element_by_link_text('登录')
- elem.click()
-
- uname = 'lanhui'
- password = 'l0ve1t'
- elem = driver.find_element_by_name('username')
- elem.send_keys(uname)
-
- elem = driver.find_element_by_name('password')
- elem.send_keys(password)
+ try:
+ driver.get(HOME_PAGE)
+ assert 'English Pal -' in driver.page_source
- elem = driver.find_element_by_xpath('//form[1]/p[3]/input[1]') # 找到登录按钮
- elem.click()
-
- assert 'EnglishPal Study Room for ' + uname in driver.title
-
- # get essay content
- driver.save_screenshot('./app/test/test_add_word_and_essay_does_not_change_pic0.png')
- elem = driver.find_element_by_id('text-content')
- essay_content = elem.text
-
- elem = driver.find_element_by_id('selected-words')
- word = random.choice(essay_content.split())
- while 'font>' in word or 'br>' in word or 'p>' in word or len(word) < 5 or has_punctuation(word):
- word = random.choice(essay_content.split())
- elem.send_keys(word)
- elem = driver.find_element_by_xpath('//form[2]//input[1]') # 找到get所有词频按钮
- elem.click()
-
- elems = driver.find_elements_by_xpath("//input[@type='checkbox']")
- for elem in elems:
- if elem.get_attribute('name') == 'marked':
- elem.click()
-
- elem = driver.find_element_by_xpath('//form[1]/input[1]') # 找到加入我的生词簿按钮
- elem.click()
-
- # get essay contant again
- driver.save_screenshot('./app/test/test_add_word_and_essay_does_not_change_pic1.png')
- elem = driver.find_element_by_id('text-content')
- current_essay_content = elem.text
-
- assert current_essay_content == essay_content
-
- # click the Next button. Now the essay should change.
- elem = driver.find_element_by_xpath('//form[1]//input[1]') # 找到get所有词频按钮
- elem.click()
-
- # compare again
- driver.save_screenshot('./app/test/test_add_word_and_essay_does_not_change_pic2.png')
- elem = driver.find_element_by_id('text-content')
- next_essay_content = elem.text
-
- assert current_essay_content != next_essay_content
-
- driver.quit()
+ # login
+ elem = driver.find_element_by_link_text('登录')
+ elem.click()
+
+ uname = 'lanhui'
+ password = 'l0ve1t'
+ elem = driver.find_element_by_name('username')
+ elem.send_keys(uname)
+
+ elem = driver.find_element_by_name('password')
+ elem.send_keys(password)
+
+ elem = driver.find_element_by_xpath('//form[1]/p[3]/input[1]') # 找到登录按钮
+ elem.click()
+
+ assert 'EnglishPal Study Room for ' + uname in driver.title
+
+ # get essay content
+ driver.save_screenshot('./app/test/test_add_word_and_essay_does_not_change_pic0.png')
+ elem = driver.find_element_by_id('text-content')
+ essay_content = elem.text
+
+ elem = driver.find_element_by_id('selected-words')
+ word = random.choice(essay_content.split())
+ while 'font>' in word or 'br>' in word or 'p>' in word or len(word) < 5 or has_punctuation(word):
+ word = random.choice(essay_content.split())
+ elem.send_keys(word)
+ elem = driver.find_element_by_xpath('//form[2]//input[1]') # 找到get所有词频按钮
+ elem.click()
+
+ elems = driver.find_elements_by_xpath("//input[@type='checkbox']")
+ for elem in elems:
+ if elem.get_attribute('name') == 'marked':
+ elem.click()
+
+ elem = driver.find_element_by_xpath('//form[1]/input[1]') # 找到加入我的生词簿按钮
+ elem.click()
+
+ # get essay contant again
+ driver.save_screenshot('./app/test/test_add_word_and_essay_does_not_change_pic1.png')
+ elem = driver.find_element_by_id('text-content')
+ current_essay_content = elem.text
+
+ assert current_essay_content == essay_content
+
+ # click the Next button. Now the essay should change.
+ elem = driver.find_element_by_xpath('//form[1]//input[1]') # 找到get所有词频按钮
+ elem.click()
+
+ # compare again
+ driver.save_screenshot('./app/test/test_add_word_and_essay_does_not_change_pic2.png')
+ elem = driver.find_element_by_id('text-content')
+ next_essay_content = elem.text
+
+ assert current_essay_content != next_essay_content
+ finally:
+ driver.quit()
diff --git a/app/test/test_login.py b/app/test/test_login.py
index 88d08f4..40cd638 100644
--- a/app/test/test_login.py
+++ b/app/test/test_login.py
@@ -13,49 +13,50 @@ HOME_PAGE = 'http://121.4.94.30:91/'
def test_login():
- driver.get(HOME_PAGE)
- driver.save_screenshot('./app/test/test_login_pic0.png')
+ try:
+ driver.get(HOME_PAGE)
+ driver.save_screenshot('./app/test/test_login_pic0.png')
+
+ assert 'English Pal -' in driver.page_source
- assert 'English Pal -' in driver.page_source
-
- elem = driver.find_element_by_link_text('成为会员')
- elem.click()
-
- uname = ''.join ( [random.choice (string.ascii_letters) for x in range (8)] )
- elem = driver.find_element_by_name('username')
- elem.send_keys(uname)
-
- elem = driver.find_element_by_name('password')
- elem.send_keys('iamc00l!')
-
- driver.save_screenshot('./app/test/test_login_pic1.png')
+ elem = driver.find_element_by_link_text('成为会员')
+ elem.click()
- elem = driver.find_element_by_xpath('//form[1]/p[3]/input[1]') # 找到注册按钮
- elem.click()
-
- driver.save_screenshot('./app/test/test_login_pic2.png')
+ uname = ''.join ( [random.choice (string.ascii_letters) for x in range (8)] )
+ elem = driver.find_element_by_name('username')
+ elem.send_keys(uname)
- assert '恭喜,你已成功注册' in driver.page_source
- assert uname in driver.page_source
-
- # logout
- driver.get(HOME_PAGE + 'logout')
- driver.save_screenshot('./app/test/test_login_pic3.png')
+ elem = driver.find_element_by_name('password')
+ elem.send_keys('iamc00l!')
- # login
- elem = driver.find_element_by_link_text('登录')
- elem.click()
-
- elem = driver.find_element_by_name('username')
- elem.send_keys(uname)
-
- elem = driver.find_element_by_name('password')
- elem.send_keys('iamc00l!')
+ driver.save_screenshot('./app/test/test_login_pic1.png')
+
+ elem = driver.find_element_by_xpath('//form[1]/p[3]/input[1]') # 找到注册按钮
+ elem.click()
- elem = driver.find_element_by_xpath('//form[1]/p[3]/input[1]') # 找到登录按钮
- elem.click()
-
- driver.save_screenshot('./app/test/test_login_pic4.png')
- assert 'EnglishPal Study Room for ' + uname in driver.title
-
- driver.quit()
+ driver.save_screenshot('./app/test/test_login_pic2.png')
+
+ assert '恭喜,你已成功注册' in driver.page_source
+ assert uname in driver.page_source
+
+ # logout
+ driver.get(HOME_PAGE + 'logout')
+ driver.save_screenshot('./app/test/test_login_pic3.png')
+
+ # login
+ elem = driver.find_element_by_link_text('登录')
+ elem.click()
+
+ elem = driver.find_element_by_name('username')
+ elem.send_keys(uname)
+
+ elem = driver.find_element_by_name('password')
+ elem.send_keys('iamc00l!')
+
+ elem = driver.find_element_by_xpath('//form[1]/p[3]/input[1]') # 找到登录按钮
+ elem.click()
+
+ driver.save_screenshot('./app/test/test_login_pic4.png')
+ assert 'EnglishPal Study Room for ' + uname in driver.title
+ finally:
+ driver.quit()
diff --git a/app/test/test_next_essay.py b/app/test/test_next_essay.py
index c34f540..f4ceba6 100644
--- a/app/test/test_next_essay.py
+++ b/app/test/test_next_essay.py
@@ -13,45 +13,46 @@ HOME_PAGE = 'http://121.4.94.30:91/'
def test_next():
- driver.get(HOME_PAGE)
- assert 'English Pal -' in driver.page_source
-
- # login
- elem = driver.find_element_by_link_text('登录')
- elem.click()
-
- uname = 'lanhui'
- password = 'l0ve1t'
- elem = driver.find_element_by_name('username')
- elem.send_keys(uname)
-
- elem = driver.find_element_by_name('password')
- elem.send_keys(password)
+ try:
+ driver.get(HOME_PAGE)
+ assert 'English Pal -' in driver.page_source
- elem = driver.find_element_by_xpath('//form[1]/p[3]/input[1]') # 找到登录按钮
- elem.click()
-
- assert 'EnglishPal Study Room for ' + uname in driver.title
-
- # get essay content
- driver.save_screenshot('./app/test/test_next_essay_pic0.png')
- elem = driver.find_element_by_id('text-content')
- essay_content = elem.text
-
- # click Next
- differ = 0
- for i in range(3):
- elem = driver.find_element_by_xpath('//form[1]/input[1]')
+ # login
+ elem = driver.find_element_by_link_text('登录')
+ elem.click()
+
+ uname = 'lanhui'
+ password = 'l0ve1t'
+ elem = driver.find_element_by_name('username')
+ elem.send_keys(uname)
+
+ elem = driver.find_element_by_name('password')
+ elem.send_keys(password)
+
+ elem = driver.find_element_by_xpath('//form[1]/p[3]/input[1]') # 找到登录按钮
elem.click()
- driver.save_screenshot('./app/test/test_next_essay_pic1.png')
+
+ assert 'EnglishPal Study Room for ' + uname in driver.title
+
+ # get essay content
+ driver.save_screenshot('./app/test/test_next_essay_pic0.png')
elem = driver.find_element_by_id('text-content')
- current_essay_content = elem.text
-
- if current_essay_content != essay_content:
- diff = 1
- break
-
- assert diff == 1
-
- driver.quit()
+ essay_content = elem.text
+
+ # click Next
+ differ = 0
+ for i in range(3):
+ elem = driver.find_element_by_xpath('//form[1]/input[1]')
+ elem.click()
+ driver.save_screenshot('./app/test/test_next_essay_pic1.png')
+ elem = driver.find_element_by_id('text-content')
+ current_essay_content = elem.text
+
+ if current_essay_content != essay_content:
+ diff = 1
+ break
+
+ assert diff == 1
+ finally:
+ driver.quit()
diff --git a/app/test/test_signup.py b/app/test/test_signup.py
index 867ca53..1a5dad9 100644
--- a/app/test/test_signup.py
+++ b/app/test/test_signup.py
@@ -13,31 +13,32 @@ HOME_PAGE = 'http://121.4.94.30:91/'
def test_signup():
- driver.get(HOME_PAGE)
- driver.save_screenshot('test_signup_pic0.png')
+ try:
+ driver.get(HOME_PAGE)
+ driver.save_screenshot('test_signup_pic0.png')
+
+ assert 'English Pal -' in driver.page_source
- assert 'English Pal -' in driver.page_source
-
- elem = driver.find_element_by_link_text('成为会员')
- elem.click()
-
- uname = ''.join ( [random.choice (string.ascii_letters) for x in range (8)] )
- elem = driver.find_element_by_name('username')
- elem.send_keys(uname)
-
- elem = driver.find_element_by_name('password')
- elem.send_keys('iamc00l!')
-
- driver.save_screenshot('test_signup_pic1.png')
+ elem = driver.find_element_by_link_text('成为会员')
+ elem.click()
- elem = driver.find_element_by_xpath('//form[1]/p[3]/input[1]') # 找到登录按钮
- elem.click()
-
- driver.save_screenshot('test_signup_pic2.png')
+ uname = ''.join ( [random.choice (string.ascii_letters) for x in range (8)] )
+ elem = driver.find_element_by_name('username')
+ elem.send_keys(uname)
- assert '恭喜,你已成功注册' in driver.page_source
- assert uname in driver.page_source
-
- driver.quit()
+ elem = driver.find_element_by_name('password')
+ elem.send_keys('iamc00l!')
+
+ driver.save_screenshot('test_signup_pic1.png')
+
+ elem = driver.find_element_by_xpath('//form[1]/p[3]/input[1]') # 找到登录按钮
+ elem.click()
+
+ driver.save_screenshot('test_signup_pic2.png')
+
+ assert '恭喜,你已成功注册' in driver.page_source
+ assert uname in driver.page_source
+ finally:
+ driver.quit()