def test_invest_success(self, back_home): logger.info(" **** 正向用例:登陆成功 检验:用户余额是否变化,标的可余额是否变化 ***** ") # 前置 - 步骤 - 断言 # 1、首页 - 选择第1个标,点击抢投标按钮 HomePage(back_home).click_first_invest_button() # 2、标页面 - 获取用户的 投资前的余额 bp = BidPage(back_home) user_money_before_invest = bp.get_user_left_money() # 2、标页面 - 获取标的 投资前的标余额 bid_money_before_invest = bp.get_bid_left_money() # 2、标页面 - 输入投资金额2000,点击投资按钮。 bp.invest(2000) # 3、标页面 - 点击查看并激活 bp.click_activation_button_on_success_popup() # 1、用户的钱少了没有 # 投资之前 - 投资之后 = 2000 # 用户页面 - 得到用户当前余额 user_money_after_invest = UserPage(back_home).get_user_left_money() # 2、标的可投余额少了没有 # 标前 - 标后 = 2000 # 用户页面 - 回退一次 UserPage(back_home).back_last_page().refresh_page() # 刷新页面, # 标页面 - 获取投资后的标余额 bid_money_after_invest = bp.get_bid_left_money() # 1、用户的钱少了没有 assert float(user_money_before_invest) - float( user_money_after_invest) == 2000 assert float(bid_money_before_invest) * 10000 - float( bid_money_after_invest) * 10000 == 2000
def test_01_success_invest(self, invest_pre_post): # 获取标的借款金额 loan_amount = invest_pre_post[1].get_loan_amount() # 获取剩余金额 surplus_amount_before = float(invest_pre_post[1].get_surplus_amount()) # 获取用户账户余额 user_amount_before = float(invest_pre_post[1].get_user_amount()) # 输入投资金额 invest_pre_post[1].input_loan_amount(ID.success_datas['money']) # 点击投标按钮 invest_pre_post[1].click_invest_button() # 出现投资成功的弹窗,点 查看激活 invest_pre_post[1].click_invest_success_alert() # 获取个人中心中的账户余额 user_amount = float( UserPage(invest_pre_post[0]).get_user_available_balance()) # 回退上上一网页 invest_pre_post[0].back() # 刷新网页 invest_pre_post[0].refresh() # 获取标剩余金额 surplus_amount_after = float(invest_pre_post[1].get_surplus_amount()) # 断言 投资的金额 = 剩余金额前-剩余金额后 = 用户金额前 -用户金额后 assert (ID.success_datas['money'] == int( (surplus_amount_before - surplus_amount_after) * 10000)) is True assert (ID.success_datas['money'] == int(user_amount_before - user_amount)) is True
def test_invest_success(self,init_driver): """ 正向场景 - 投资成功:投资金额固定为1000 """ # 步骤 logging.info("投资功能 - 正常场景用例:投资1000元成功。用户可用余额减少1000,标余额减少1000 ") # 1、首页 - 第一标 - 抢投标 HomePage(init_driver[0]).click_first_bid() # 2、标页面 - 获取输入框当中,投资前的用户余额 user_money_before_invest = init_driver[1].get_user_money() # 3、标页面 - 获取标的余额,投资前。 bid_money_before_invest = init_driver[1].get_bid_left_money() # 4、标页面 - 输入金额20000,点击投标 init_driver[1].invest(ID.success["money"]) # 5 、标页面 - 成功弹出框当中,点击查看并激活 init_driver[1].click_active_button_in_success_popup() # 6 、个人页面获取用户的余额 user_money_after_invest = UserPage(init_driver[0]).get_user_left_money() # 7 、 回退到表页面刷新后再次获取表的余额 init_driver[0].back() time.sleep(2) init_driver[0].refresh() #成功投资后标的余额 bid_money_after_invest = init_driver[1].get_bid_left_money() # 断言 # 1、用户余额少了1000 assert ID.success["money"] == int(float(user_money_before_invest)-float(user_money_after_invest))
def test_invest_3_success(self): # 步骤 # 1、首页 - 选标投资。默认选第一个标。 # IndexPage(self.driver).click_firstBid() # 2.0标页面 - 金额输入框中,获取用户的当前余额 bp = BidPage(self.driver) userMoney_beforeInvest = bp.get_userLeftMoney() money_before = int(userMoney_beforeInvest.split('.', 2)[0]) # 2、标页面 - 金额输入,投资操作。 bp.invest(TD.money) # 3、标页面 - 投资成功的弹出框中,点击查看并激活 bp.click_activeButton_on_investSuccess_popup() # 断言 userMoney_afterInvest = UserPage(self.driver).get_userLeftMoney() money_after = int((userMoney_afterInvest.split("元", 2)[0]).split('.', 2)[0]) + TD.money self.assertEqual(money_before, money_after)
def setUpClass(cls): cls.driver = webdriver.Chrome() cls.driver.get('http://120.78.128.25:8765/Index/login.html') cls.driver.maximize_window() cls.ip = IndexPage(cls.driver) cls.bp = BidPage(cls.driver) cls.lp = LoginPage(cls.driver) cls.up = UserPage(cls.driver) # 登陆账号 cls.lp.login(LD.sucess_data['phone'], LD.sucess_data['password']) # 选择投标 cls.ip.select_invest()
def test_invest_l_success(self): logging.info("*******投资用例: 正常场景 - 投资成功*******") # 标页面 - 获取投资前的个人余额 userMoney_beforeInvest = self.bid_page.get_user_money() # 标页面 - 输入投资金额,点击投标按钮 self.bid_page.invest(ID.success["money"]) # 标页面 - 投资成功弹出框,点击查看并激活按钮 self.bid_page.click_activeButton_on_success_popup() # #验证 # 个人页面-获取用户当前余额 userMoney_afterInvest = UserPage(self.driver).get_user_leftMoney() # 1、余额:投资前获取一下,投资后再获取一下。求差值,如果等于投资金额,那正确。 assert ID.success["money"] == int( float(userMoney_beforeInvest) - (float(userMoney_afterInvest)))
def test_invest_success(self,prepare_nev): # LoginPage(prepare_nev).login(CD.user, CD.passwd)#self.driver对象调用setupClass内里的类方法传参 #步骤 # # 1、首页 - 选标投资。默认选第一个标。 # IndexPage(prepare_nev).click_firstBid() # 2.0标页面 - 金额输入框中,获取用户投标前的余额 bp = BidPage(prepare_nev) userMoney_beforeInvest = bp.get_userLeftMoney() # 2、标页面 - 金额输入,投资操作。 bp.invest(TD.money) # 3、标页面 - 投资成功的弹出框中,点击查看并激活 bp.click_activeButton_on_investSuccess_popup() #断言 userMoney_afterInvest = UserPage(prepare_nev).get_userLeftMoney() assert float(userMoney_beforeInvest),userMoney_afterInvest+TD.money
def test_invest_success(self): ''' 首页-选择第一个标的前投标按钮 标的页面,获取投资前的用户余额(用于后面期望中的比较) 标的页面,输入投资金额,进行投资操作,投资成功的弹框 ''' HomePage(self.driver).click_firstBib() bid_p = BidPage(self.driver) #获取投资之前的余额 money_beforeInvest = bid_p.get_userLeftMoney() bid_p.invest(invest_1) bid_p.click_button_on_investSuccessPopup() #验证 money_afterInvest = UserPage(self.driver).get_userLeftMoney() self.assertEqual(int(float(money_beforeInvest)-float(money_afterInvest)),invest_1)
def test_invest_success(self): logging.info("=====投资用例:正常场景-投资成功=====") # 步骤 # 1.在首页选择标的投资--部根据标名 根据抢投标,默认第一个标 # 表页面--获取一个投资前的用户余额 userMoney_beforeInvest = self.bid_page.get_user_money() # 2.标页面-输入投资金额,点击投资按钮 self.bid_page.invest(ID.success['money']) # 3.标页面-点击投资成功的弹出框--查看并激活,进入个人页面 self.bid_page.click_activeButton_on_success_popup() # 断言 # 钱 投资后的金额,是不是少了投资的量 # 个人页面--获取投资后的金额 userMoney_afterInvest = UserPage(self.driver).get_user_leftMoney() # 投资前的金额-投资后的金额==投资金额 assert ID.success["money"] == int( float(userMoney_beforeInvest) - float(userMoney_afterInvest))
def test_invest_2_success(self, access_invest): logger.info("******投资用例:正常场景-投资成功 ******") # 标页面 - 获取投资前的个人余额 userMoney_beforeInvest = access_invest[1].get_uer_money() # 标页面 - 输入投标金额,点击投标按钮 access_invest[1].invest(IDs.inverst_success["money"]) # 标页面 - 投资成功的弹出框,点击查看并激活 access_invest[1].click_activeButton_on_success_popup() ## 断言 # 个人页面 - 获取用户当前余额 userMoney_afterInvest = UserPage(access_invest[0]).get_avabile_mount() # 余额,投资前后对比 # self.assertEqual(userMoney_beforeInvest - userMoney_afterInvest, IDs.inverst_success["check"]) # 在数据没有在page页面float处理的情况,可以参考下面的断言,更简洁 # assert IDs.inverst_success["check"] == int(float(userMoney_beforeInvest)-float(userMoney_afterInvest)) assert IDs.inverst_success["check"] == (userMoney_beforeInvest - userMoney_afterInvest)
def test_invest_success(self, login_web): logging.info("*********投资用例:正常场景-投资成功*********") # 首页 - 选一个标来投资 - 直接选第一个标 - --- / 随机选一个 IndexPage(login_web).click_first_investButton() # 标页面 - 获取投资前的个人余额 bid_page = BidPage(login_web) userMoney_beforeInvest = bid_page.get_user_leftMoney() # 标页面 - 输入投资金额 ,点击投标按钮 bid_page.invest(ID.invest_money) # 标页面 - 投资成功弹出框 ,点击查看并激活按钮 bid_page.click_activeButton_from_investSuccess_popup() # #验证 # 个人页面 - 获取用户当前余额 userMoney_afterInvest = UserPage(login_web).get_user_leftMoney() # 1、余额:投资前获取一下,投资后再获取一下。求差值,如果等于投资金额,那正确。 assert ID.invest_money == int( float(userMoney_beforeInvest) - float(userMoney_afterInvest))
def test_invest_success(self): # 步骤: # 1.首页-选标 IndexPage(self.driver).click_firstBid() # 2.标页面-输入金额,进行投资 bp = BidPage(self.driver) # 2.0 标页面获取当前余额 userMoney_beforeInvest = bp.get_userLeftMoney() bp.invest(TD.money) # 3.标页面-投资成功的弹出框中,点击 查看并激活 bp.click_activeButton_on_investSuccess_popup() # 断言: # 1.投资前的金额-现在的余额=投资的金额 # 1.0个人页面获取用户可用余额 # 2.0-1.0=投资的金额 userMoney_afterInvest = UserPage(self.driver).get_userLeftMoney() investMoney = userMoney_beforeInvest - userMoney_afterInvest self.assertEqual(investMoney, TD.money)
def test__invest_success(self): # 正常用例 前提条件 # 用户已登录 # 有能够投资的标 # 账号有余额可以投资 # 步骤 # 标页面---获取一下投资用户余额 userMoney_beforeInvest = self.bid_page.get_user_money() # 2. 标页面---输入投资金额,点击投资按钮 self.bid_page.invest(ID.invest_money_seccess["money"]) # 3. 标页面---点击投资成功的弹出框--查看并激活 self.bid_page.click_activeButton_on_success_popup() # 断言 # 个人页面----获取投资后金额 userMoney_afterInvest = UserPage(self.driver).get_user_leftMoney() # 投资前金额-投资后金额 = 投资金额 assert ID.invest_money_seccess['money'] == int( float(userMoney_beforeInvest) - float(userMoney_afterInvest))
def test_invest_success(self): # 首页直接选第一个标, IndexPage(self.driver).click_first_invest_button() # 标页面-获取用户可用余额 big_page = BigPage(self.driver) user_money_before_invest = big_page.get_user_left_money() # 标页面输入金额,进行投资,投资金额200, big_page.invest(200) # 点击投资成功弹出框中的,查看并激活按钮。 big_page.click_active_button_from_invest_success_puput() # 验证 # 个人页面:获取用户可用余额 user_money_after_invest = UserPage(self.driver).get_user_left_money() # 比对: 余额=投资前-投资后 self.assertEqual( 200, int( float(user_money_before_invest) - float(user_money_after_invest)))
def test_invest_success(self): """ 正向场景 - 投资成功:投资金额固定为20000 """ # 步骤 logging.info("投资功能 - 正常场景用例:投资20000元成功。用户可用余额减少20000,标余额减少20000 ") # 1、首页 - 第一标 - 抢投标 HomePage(self.driver).click_first_bid() # 2、标页面 - 获取输入框当中,投资前的用户余额 user_money_before_invest = BidPage(self.driver).get_user_money() # 3、标页面 - 获取标的余额,投资前。 bid_money_before_invest = BidPage(self.driver).get_bid_left_money() # 4、标页面 - 输入金额20000,点击投标 BidPage(self.driver).invest(ID.success["money"]) # 5 、标页面 - 成功弹出框当中,点击查看并激活 BidPage(self.driver).click_active_button_in_success_popup() # 6 、个人页面获取用户的余额 user_money_after_invest = UserPage(self.driver).get_user_left_money() # 7 、 回退到表页面刷新后再次获取表的余额 self.driver.back() time.sleep(2) self.driver.refresh() #成功投资后标的余额 bid_money_after_invest = self.bp.get_bid_left_money() # 断言 # 1、用户余额少了20000 self.assertEqual( ID.success["money"], int( float(user_money_after_invest) - float(user_money_before_invest))) # 2、标的可投余额少了20000 self.assertEqual( ID.success["money"], int( float(bid_money_after_invest) - float(bid_money_before_invest)))