python 测试类中方法
import unittest
def setUpModule():
print("In setUpModule()...")
def tearDownModule():
print('In tearDownModule()...')
class TestClass01(unittest.TestCase):
@classmethod
def setUpClass(cls):
print("In setUpClass()...")
@classmethod
def tearDownClass(cls):
print("In tearDownClass()...")
def setUp(self):
print("\nIn setUp()...")
def tearDown(self):
print("In tearDown()...")
def test_case01(self):
self.assertTrue("PYTHON".isupper())
print("In test_case01()")
def test_case02(self):
self.assertTrue("python".islower())
print("In test_case02()")
if __name__ == '__main__':
unittest.main()
web 测试方法
测试百度的登录
使用selenium模块中的webdriver,去驱动游览器,实现自动登录,看运行的结果,
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import unittest
class NewVisitorTest(unittest.TestCase):
def setUp(self):
self.timeout = 40
self.browser = webdriver.Chrome()
self.browser.set_page_load_timeout(self.timeout)
self.wait = WebDriverWait(self.browser, self.timeout)
def tearDown(self):
self.browser.quit()
def test_can_start_a_list_and_retrieve_it_later(self):
# 驱动游览器访问网站的地址
self.browser.get('https://www.baidu.com')
# 判断进入的页面是不是百度
self.assertIn('百度', self.browser.title)
# 找到该页面的登录按钮
login_link = self.wait.until(
EC.element_to_be_clickable((By.LINK_TEXT, '登录')))
# 实现自动登录
login_link.click()
# 找到登录界面的“用户登录”按钮的id
login_link_2 = self.wait.until(
EC.element_to_be_clickable((By.ID, 'TANGRAM__PSP_10__footerULoginBtn')))
#进行登录
login_link_2.click()
# 找到用户登录的<input>的id
username_input = self.wait.until(
EC.presence_of_element_located((By.ID, 'TANGRAM__PSP_10__userName')))
# 清空
username_input.clear()
# 进行自动输入
username_input.send_keys('pebbleapp@163.com')
password_input = self.wait.until(
EC.presence_of_element_located((By.ID, 'TANGRAM__PSP_10__password')))
password_input.clear()
password_input.send_keys('Vff654321')
# 找到确认登录按钮
login_submit_button = self.wait.until(
EC.element_to_be_clickable((By.ID, 'TANGRAM__PSP_10__submit')))
# 进行自动登录
login_submit_button.click()
username_span = self.wait.until(
EC.presence_of_element_located((By.CSS_SELECTOR, '#s_username_top > span')))
# 判断登录后的用户名是不是和你的匹配
self.assertEqual(username_span.text, 'PebbleApp')
# user_login_link = self.browser.find_element_by_id('TANGRAM__PSP_10__footerULoginBtn')
# user_login_link.click()
if __name__ == '__main__':
unittest.main(warnings='ignore')