class TestNewUserCreat(unittest.TestCase): #前置条件将重复的逻辑都放在前置条件里面 def setUp(self) -> None: # 1, 打开浏览器; self.driver = webdriver.Chrome() # 设置隐式等待 self.driver.implicitly_wait(20) # 初始化要用到的页面 self.login_bank_page = LoginPage(self.driver) self.index_bank_page = IndexPage(self.driver) #登陆 login_bank_data = test_data_success[0] self.login_bank_page.login(login_bank_data['username'], login_bank_data['pwd']) #关闭游览器 def tearDown(self) -> None: self.driver.quit() #新增用户成功 def test_new_user_creat_success(self,test_info):
class TestLogin(unittest.TestCase): #前置条件将重复的逻辑都放在前置条件里面 def setUp(self) -> None: # 1, 打开浏览器; self.driver = webdriver.Chrome() # 设置隐式等待 self.driver.implicitly_wait(20) # 初始化要用到的页面 self.login_bank_page = LoginPage(self.driver) self.index_bank_page = IndexPage(self.driver) #关闭游览器 def tearDown(self) -> None: self.driver.quit() @ddt.data(*test_data_error_01) def test_login_01_error( self, test_info): #用test_info来接收test_data拆包后的参数,加数字可以代表执行的先后顺序 """手机号码为空""" #第一个:获取实际结果(封装以后执行的函数或者方法) res = request.visit() #actual = login(self.driver, test_info["username"], test_info["pwd"]) # actual = self.login_bank_page.login(test_info['username'], test_info['pwd']) #将获取错误信息进行重新封装后要这么写 self.login_bank_page.login(test_info['username'], test_info['pwd']) actual = self.login_bank_page.get_error_msg() # 第二个:获取预期结果 test_info【‘expected’】 expected = test_info['expected'] # 第三个:断言 self.assertEqual(expected, actual)
class TestLogin(unittest.TestCase): #前置条件将重复的逻辑都放在前置条件里面 def setUp(self) -> None: # 1, 打开浏览器; self.driver = webdriver.Chrome() # 设置隐式等待 self.driver.implicitly_wait(20) # 初始化要用到的页面 self.login_bank_page = LoginPage(self.driver) self.index_bank_page = IndexPage(self.driver) #关闭游览器 def tearDown(self) -> None: self.driver.quit() # #没有授权的登录 # # 获取没有通过授权 @pytest.mark.failed @ddt.data(*login_data_invalid) def test_login_02_invalid(self, test_info): # 登录 self.login_bank_page.login(test_info['username'], test_info['pwd']) time.sleep(2) # 获取没有通过授权的实际结果 actual = self.login_bank_page.get_invalid_msg() expected = test_info['expected'] self.assertEqual(expected, actual)
def login(test_info): """登录的夹具""" driver = webdriver.Chrome() login_bank_page = LoginPage(driver) index_bank_page = IndexPage(driver) # 登陆的逻辑 login_bank_page.login(test_info['username'], test_info['pwd']) yield driver, login_bank_page, index_bank_page driver.quit()
class TestLogin(unittest.TestCase): #前置条件将重复的逻辑都放在前置条件里面 def setUp(self) -> None: # 1, 打开浏览器; self.driver = webdriver.Chrome() # 设置隐式等待 self.driver.implicitly_wait(20) # 初始化要用到的页面 self.login_bank_page = LoginPage(self.driver) self.index_bank_page = IndexPage(self.driver) #关闭游览器 def tearDown(self) -> None: self.driver.quit() #@ddt.data(*test_data) # def test_login_error(self,test_info):#用test_info来接收test_data拆包后的参数 # """手机号码为空""" # # 第一个:获取实际结果(封装以后执行的函数或者方法) res = request.visit() # # actual = login(self.driver, test_info["username"], test_info["pwd"]) # # actual = self.login_bank_page.login(test_info['username'], test_info['pwd']) # # #将获取错误信息进行重新封装后要这么写 # self.login_bank_page.login(test_info['username'], test_info['pwd']) # actual = self.login_bank_page.get_error_msg() # # 第二个:获取预期结果 test_info【‘expected’】 # expected = test_info['expected'] # # 第三个:断言 # self.assertEqual(expected, actual) # 讲登录成功 def test_login_success(self): """登录成功""" # 执行登录操作, login_page.login() self.login_bank_page.login("pzhbank", '123456') # 进入了??页面 我的帐户[python] # 定位我的账户 #self.index_bank_page.get()#如果遇到登陆报404错误可以使用这个代码手动进入当前页面 #实际结果 actual = self.index_bank_page.get_element_user() # 预期结果 expected = '运营数据' #断言,用asserIn可以只断言包含这里面的某个字就行 self.assertIn(expected , actual.text)
class TestLogin(unittest.TestCase): #前置条件将重复的逻辑都放在前置条件里面 def setUp(self) -> None: # 1, 打开浏览器; self.driver = webdriver.Chrome() # 设置隐式等待 self.driver.implicitly_wait(20) # 初始化要用到的页面 self.login_bank_page = LoginPage(self.driver) #关闭游览器 def tearDown(self) -> None: self.driver.quit() # @ddt.data(*test_data_error_01) # def test_login_01_error(self,test_info):#用test_info来接收test_data拆包后的参数,加数字可以代表执行的先后顺序 # """手机号码为空""" # # 第一个:获取实际结果(封装以后执行的函数或者方法) res = request.visit() # # actual = login(self.driver, test_info["username"], test_info["pwd"]) # # actual = self.login_bank_page.login(test_info['username'], test_info['pwd']) # # #将获取错误信息进行重新封装后要这么写 # self.login_bank_page.login(test_info['username'], test_info['pwd']) # actual = self.login_bank_page.get_error_msg() # # 第二个:获取预期结果 test_info【‘expected’】 # expected = test_info['expected'] # # 第三个:断言 # self.assertEqual(expected, actual) #没有授权的登录 # 获取没有通过授权 @ddt.data(*login_data_invalid) def test_login_02_invalid(self, test_info): # 登录 self.login_bank_page.login(test_info['username'], test_info['pwd']) # time.sleep(2) # 获取没有通过授权的实际结果 actual = self.login_bank_page.get_invalid_msg() expected = test_info['expected'] self.assertEqual(expected, actual)