def test_bid_success(self, data, init_web): """首页选择标,点击投标""" self.driver, self.login_page = init_web self.bid_page = BidPage(self.driver) self.login_page.login(data['user'], data['pwd']) IndexPage(self.driver).choose_bid() # 定位投资输入框元素 ele = self.bid_page.get_bid_input() data = float(ele.get_attribute("data-amount")) # print(data) # 输入投资金额 ele.send_keys(invest_money) # 点击投资 self.bid_page.click_bid_submit() # 激活并查看 self.bid_page.click_alert() actual_money_str = UserPage(self.driver).get_user_money() actual_money = float(actual_money_str) # 调试步骤 print(int(data * 100)) print(int(invest_money * 100)) print(int(actual_money * 100)) # 断言相关操作 assert (int(data * 100) - invest_money * 100 == int(actual_money * 100))
class TestBid(object): @allure.feature("测试投资成功的用例") @pytest.mark.success @pytest.mark.parametrize("data", user_success_info) def test_bid_success(self, data, init_web): self.driver, self.login_page = init_web self.bid_page = BidPage(self.driver) self.login_page.login(data["username"], data["pwd"]) # 点击投标 IndexPage(self.driver).choose_bid() # 定位投资输入框元素 ele = self.bid_page.get_bid_input() data = float(ele.get_attribute("data-amount")) # print(data) # 输入投资金额 ele.send_keys(invest_money) # 点击投资 self.bid_page.click_bid_submit() # 激活并查看 self.bid_page.click_alert() actual_money_str = UserPage(self.driver).get_user_money() actual_money = float(actual_money_str) # 调试步骤 print(int(data*100)) print(int(invest_money*100)) print(int(actual_money * 100)) # 断言相关操作 assert(int(data*100) - invest_money*100 == int(actual_money*100))
class TestBid(unittest.TestCase): def setUp(self)-> None: """登陆""" self.driver = webdriver.Chrome() self.login_page = LoginPage(self.driver) self.login_page.login(user_info_success["username"], user_info_success["pwd"]) self.bid_page = BidPage(self.driver) def tearDown(self)-> None: #箭头符号表示函数注解表示返回的是None self.driver.quit() def test_bid_success(self): #在首页选择标的 choice_bid() ,点击投标 IndexPage(self.driver).choice_bid() #定位投资输入框元素 e = self.bid_page.get_bid_input_element() expect = e.get_attribute('data-amount') print(expect) #发送投资金额 e.send_keys(invest_money) #点击投标 self.bid_page.click_bid_submit() #获取可用余额 actual_money_str = UserPage(self.driver).get_user_money() actual_money = float(actual_money_str) #断言相关操作 self.assertTrue(int(expect*100)-invest_money == int(actual_money))
class TestBid(object): """投标测试用例""" @pytest.mark.parametrize('case', bid_data) def test_bid(self, case, init_web): driver = init_web login_page = LoginPage(driver) home_page = HomePage(driver) bid_page = BidPage(driver) # 登录 login_page.login(config.get('data', 'phone'), config.get('data', 'password')) # 断言 try: # 确认首页已经打开 home_page.opened() # 首页,点击投标,进入投标详情页 home_page.get_bid_button().click() # 投标详情页,定位可用余额输入框 element_available_balance = bid_page.get_available_balance() element_available_balance.send_keys(case['amount']) # 投标详情页,定位投标按钮 element_bid_button = bid_page.get_bid_button() # 断言 assert case['expected'] == getattr(element_bid_button, 'text') print('用例执行成功') except Exception as e: # 截图 home_page.screen_shot() print('用例执行失败') raise e
def class_web2(): '''初始化浏览器并登陆''' driver = Chrome() login_page = LoginPage(driver) login_page.login("18684720553", "python") bid_page = BidPage(driver) yield driver, bid_page driver.quit()
def bid_init_driver(): driver = webdriver.Chrome() driver.get("http://120.78.128.25:8765/Index/login.html") login_page = LoginPage(driver) login_page.submit_userinfo(login.user_corrent['phone'], login.user_corrent['password']) bid_page = BidPage(driver) yield (driver, login_page, bid_page) #相当于setup #生成器,迭代器 driver.quit()
def init_driver(): print('begin driver') driver = webdriver.Chrome() driver.get("http://120.78.128.25:8765/Index/login.html") driver.maximize_window() login_page = LoginPage(driver) login_page.submit_userinfo(login_message.user_corrent[0]["phone"], login_message.user_corrent[0]["password"]) index_page = IndexPage(driver) bid_page = BidPage(driver) yield (driver, index_page, bid_page) #在执行yield地时候会执行测试用例,执行完测试用例在执行quit driver(生成器) #yield 后面可以return一些东西,生成器的概念 print('quit driver') driver.quit()
def setUp(self)-> None: """登陆""" self.driver = webdriver.Chrome() self.login_page = LoginPage(self.driver) self.login_page.login(user_info_success["username"], user_info_success["pwd"]) self.bid_page = BidPage(self.driver)