class TestLogin: # 初始化 def setup_class(self): # 获取driver self.driver = GetDriver().get_driver() # 实例化PageLogin self.login = PageLogin(self.driver) # 点击登录连接 self.login.page_click_login_link() # 结束 def teardown_class(self): # 关闭driver GetDriver().quit_driver() # 测试方法 @pytest.mark.parametrize("username,pwd,code,expect_result, success", get_data()) def test_login(self, username, pwd, code, expect_result, success): # 调用业务登录方法 self.login.page_login(username, pwd, code) # 判断 正向 if success == "true": try: # 断言 昵称 assert expect_result == self.login.page_get_nickname() except Exception as e: # 截图 日志 self.login.base_get_img() log.error(e) # 注意:一定要抛出异常 raise finally: # 安全退出 self.login.page_click_logout() sleep(3) # 点击登录连接 self.login.page_click_login_link() # 否则 逆向 else: try: # 断言 异常提示信息 assert expect_result == self.login.page_get_err_info() # 点击 异常提示信息确定按钮 self.login.page_click_err_ok_btn() except Exception as e: # 截图 日志 self.login.base_get_img()
class TestCart(unittest.TestCase): log.info("[TestCart]: 购物车用例开始执行") def setUp(self): # 获取diver self.driver = GetDriver().get_driver() log.info("[TestCart]: 获取driver对象") # 获取PageCart对象 self.cart = PageCart(self.driver) log.info("[TestCart]: 获取购物车对象") # 获取PageLogin对象 self.login = PageLogin(self.driver) log.info("[TestCart]: 获取登录页面对象") # 点击登录连接 self.login.page_click_login_link() log.info("[TestCart]: 点击登录连接") # 登录 self.login.page_login_static() log.info("[TestCart]: 执行登录") sleep(3) # 回到首页 self.cart.base_get_index() log.info("[TestCart]: 回到首页") def tearDown(self): # 关闭浏览器 GetDriver().quit_driver() log.info("[TestCart]: 关闭driver对象") def test_add_cart(self, key="小米手机", expect_result="添加成功"): try: # 调用添加购物车方法 self.cart.page_add_goods_cart(key) log.info("[TestCart]: 调用添加购物车操作方法") # 断言获取添加结果提示信息 result = self.cart.page_get_add_cart_info() log.info("[TestCart]: 添加购物车后提示信息:{}".format(result)) self.assertEqual(expect_result, result) # 回到默认页面 self.cart.base_default_frame() log.info("[TestCart]: 回到iframe默认页面") # 关闭提示信息框 self.cart.page_click_close_iframe() log.info("[TestCart]: 关闭提示添加成功后的信息框") except Exception as e: log.error(e)
class TestOrder(unittest.TestCase): log.info("[TestOrder]:订单模块测试用例") def setUp(self): try: # 获取driver对象 self.driver = GetDriver().get_driver() log.info("[TestOrder]: 获取driver对象") # 获取登录对象 self.login = PageLogin(self.driver) log.info("[TestOrder]: 获取登录对象") # 点击登录连接 self.login.page_click_login_link() log.info("[TestOrder]: 点击登录连接") # 登录 self.login.page_login_static() log.info("[TestOrder]: 执行登录成功") # 回到首页 self.login.base_get_index() log.info("[TestOrder]: 回到首页") # 获取 PageOrder对象 self.order = PageOrder(self.driver) log.info("[TestOrder]: 获取PageOrder对象") except Exception as e: log.error(e) def tearDown(self): # 关闭drive对象 GetDriver().quit_driver() log.info("[TestOrder]: 关闭driver对象") def test_order(self): try: # 调用提交订单方法 order = self.order order.page_submit_order() log.info("[TestOrder]: 执行提交订单业务") result = order.page_get_submit_order_result() self.assertIn("订单提交成功", result) log.info("[TestOrder]: 订单断言成功,断言信息:{}".format(result)) except Exception as e: log.error(e)
class TestLogin(): # 初始化 def setup_class(self): # 获取driver self.driver = GetDriver().get_driver() # 实例化PageLogin self.login = PageLogin(self.driver) # 点击登录链接 self.login.page_click_login_link() # 结束 def teardown_class(self): # 关闭deriver GetDriver().quit_driver() # def test_login(self,username="******",pwd="123456",code="8888"): # self.page.login_tpshop(username,pwd,code) # 测试方法 @pytest.mark.parametrize("username,pwd,code,success,expect_result", get_data()) def test_login(self, username, pwd, code,success,expect_result): # 调用业务登录方法 self.login.page_login_tpshop(username, pwd, code) # 判断 正常 if success == "true": try: # 断言 昵称 assert expect_result==self.login.page_get_nickname() except Exception as e: self.login.base_get_img() finally: # 安全退出 self.login.page_click_logout() sleep(3) # 点击登录链接 self.login.page_click_login_link() # 否则 逆向 else:
class TestPay(unittest.TestCase): log.info("[TestPay]:支付模块用例") def setUp(self): # 获取dirver self.driver = GetDriver().get_driver() log.info("[TestPay]:获取driver对象:{}".format(self.driver)) # 实例化 登录对象 self.login = PageLogin(self.driver) log.info("[TestPay]:获取登录对象:{}".format(self.login)) # 实例化 PagePay对象 self.pay = PagePay(self.driver) log.info("[TestPay]:获取支付对象:{}".format(self.pay)) # 点击 登录连接地址 self.login.page_click_login_link() log.info("[TestPay]:点击登录地址:{}".format(self.driver.current_url)) # 执行登录 操作 self.login.page_login_static() log.info("[TestPay]:执行登录业务脚本成功") # 回到首页 self.login.base_get_index() log.info("[TestPay]:回到首页地址:{}".format(self.driver.current_url)) def tearDown(self): # 关闭driver GetDriver().quit_driver() log.info("[TestPay]:退出driver对象,driver:{}".format(self.driver)) def test_pay(self): try: # 调用支付业务代码 self.pay.page_pay() log.info("[TestPay]:调用支付业务成功") # 断言 result = self.pay.page_get_payment_result() self.assertIn("订单提交成功", result) log.info("[TestPay]:断言支付状态成功,返回信息:{}".format(result)) except Exception as e: log.error("支付业务出错,详情:{}".format(e))