forked from mrlan/EnglishPal
				
			add test_word_operation.py in test folder
							parent
							
								
									670e5a2083
								
							
						
					
					
						commit
						a35a21074a
					
				|  | @ -0,0 +1,91 @@ | |||
| from time import sleep | ||||
| from selenium import webdriver | ||||
| 
 | ||||
| # 获取浏览器驱动,并且打开响应的网址 | ||||
| driver = webdriver.Chrome(executable_path="C:\Program Files (x86)\Google\ChromeDriver\chromedriver.exe") | ||||
| 
 | ||||
| HOME_PAGE = "http://127.0.0.1:5000/" | ||||
| 
 | ||||
| 
 | ||||
| def test_word_operation(): | ||||
|     try: | ||||
|         login() | ||||
|         unfamiliar() | ||||
|         familiar() | ||||
|         delete() | ||||
|     finally: | ||||
|         driver.quit() | ||||
| 
 | ||||
| 
 | ||||
| def login(): | ||||
|     driver.get(HOME_PAGE) | ||||
| 
 | ||||
|     assert 'English Pal -' in driver.page_source | ||||
| 
 | ||||
|     # login | ||||
|     elem = driver.find_element_by_link_text('登录') | ||||
|     elem.click() | ||||
|     sleep(2) | ||||
|     uname = 'peter' | ||||
|     password = 'peter' | ||||
| 
 | ||||
|     elem = driver.find_element_by_name('username') | ||||
|     elem.send_keys(uname) | ||||
| 
 | ||||
|     elem = driver.find_element_by_name('password') | ||||
|     elem.send_keys(password) | ||||
| 
 | ||||
|     # find the login button | ||||
|     elem = driver.find_element_by_xpath('/html/body/form/p[3]/input') | ||||
|     elem.click() | ||||
| 
 | ||||
|     assert 'EnglishPal Study Room for ' + uname in driver.title | ||||
| 
 | ||||
| 
 | ||||
| def familiar(): | ||||
|     sleep(5) | ||||
| 
 | ||||
|     elem = driver.find_element_by_xpath('//*[@id="p_0"]/a[3]') | ||||
| 
 | ||||
|     count = int(elem.find_element_by_xpath('//*[@id="freq_0"]').text) | ||||
| 
 | ||||
|     loop = 3 | ||||
| 
 | ||||
|     for i in range(loop): | ||||
|         elem.click() | ||||
|         sleep(1) | ||||
| 
 | ||||
|     new_count = int(driver.find_element_by_xpath('//*[@id="freq_0"]').text) | ||||
| 
 | ||||
|     assert count - loop == new_count | ||||
| 
 | ||||
| 
 | ||||
| def unfamiliar(): | ||||
|     sleep(5) | ||||
| 
 | ||||
|     elem = driver.find_element_by_xpath('//*[@id="p_0"]/a[4]') | ||||
| 
 | ||||
|     count = int(elem.find_element_by_xpath('//*[@id="freq_0"]').text) | ||||
| 
 | ||||
|     loop = 2 | ||||
| 
 | ||||
|     for i in range(loop): | ||||
|         elem.click() | ||||
|         sleep(1) | ||||
| 
 | ||||
|     new_count = int(driver.find_element_by_xpath('//*[@id="freq_0"]').text) | ||||
| 
 | ||||
|     assert count + loop == new_count | ||||
| 
 | ||||
| 
 | ||||
| def delete(): | ||||
|     sleep(3) | ||||
|     word = driver.find_element_by_xpath('//*[@id="word_0"]').text | ||||
|     elem = driver.find_element_by_xpath('//*[@id="p_0"]/a[5]') | ||||
|     elem.click() | ||||
|     sleep(5) | ||||
|     driver.refresh() | ||||
|     driver.refresh() | ||||
|     driver.refresh() | ||||
|     find_word = word in driver.page_source | ||||
|     assert find_word is False | ||||
		Loading…
	
		Reference in New Issue