def setup(self): self.driver = DriverUtils.get_driver() DriverUtils.set_switch(True) self.index_page = IndexPage(self.driver) self.cart_page = CartPage(self.driver) self.order_page = OrderPage(self.driver) self.order_pay_page = OrderPayPage(self.driver) self.home_page = HomePage(self.driver) self.driver.get("http://localhost/")
def test_11(self): """MRYX_ST_shop011:验证购物车添加功能_购物车里减少商品的数量""" bp = BasePage(self.driver) bp.click(HomePage.sort_locator) bp.choose(SortPage.buy_locator, [1]) for i in range(4): bp.choose(SortPage.repeat_add_locator, [1]) bp.click(HomePage.cart_locator) for i in range(4): bp.click(CartPage.sub_locator) assert_number = bp.get_text(CartPage.cart_number_locator) self.assertEqual("1", assert_number) cp = CartPage(self.driver) cp.drop_cart()
def test_009(self): """MRYX_ST_shop009:验证购物车结算功能_取消部分勾选购物车商品""" bp = BasePage(self.driver) bp.click(HomePage.sort_locator) bp.choose(SortPage.buy_locator, [1, 2]) bp.click(HomePage.cart_locator) """获取断言信息""" before_price = bp.order_text(CartPage.cart_price_locator, 2) ele = bp.find_elements(CartPage.choose_signal_locator) ele[1].click() after_price = bp.get_text(CartPage.all_prince_locator) """断言""" self.assertEqual(before_price, after_price) ele[1].click() cp = CartPage(self.driver) cp.drop_cart()
def test_008(self): """MRYX_ST_shop008:验证购物车结算功能_不勾选【云超特卖】""" bp = BasePage(self.driver) bp.click(HomePage.sort_locator) bp.choose(SortPage.buy_locator, [1, 2]) bp.click(HomePage.cart_locator) """获取断言文本""" all_price_text = bp.get_text(CartPage.all_prince_locator) bp.click(CartPage.cloud_market_locator) none_price_text = bp.get_text(CartPage.choose_all_locator) """断言""" self.assertNotEqual(all_price_text, none_price_text) self.assertEqual(none_price_text, "") bp.click(CartPage.cloud_market_locator) cp = CartPage(self.driver) cp.drop_cart()
class TestOrder: def setup(self): self.driver = DriverUtils.get_driver() DriverUtils.set_switch(True) self.index_page = IndexPage(self.driver) self.cart_page = CartPage(self.driver) self.order_page = OrderPage(self.driver) self.order_pay_page = OrderPayPage(self.driver) self.home_page = HomePage(self.driver) self.driver.get("http://localhost/") def teardown(self): time.sleep(3) DriverUtils.quit_driver() # 运行于类的结束, 而不是测试方法的结束, 执行完全部测试脚本后, 关闭浏览器驱动 def teardown_class(self): DriverUtils.set_switch(False) DriverUtils.get_driver().get_screenshot_as_file("./screenshot/tpshop.png") DriverUtils.quit_driver() def test_submit_order(self): self.index_page.click_my_cart_link() self.cart_page.click_go_to_pay_btn() # 地址信息加载慢, 等一会 time.sleep(8) self.order_page.click_submit_btn() # 支付页面跳转慢, 也等一会 time.sleep(5) assert "订单提交成功,请您尽快付款!" == self.order_pay_page.get_tips_info() def test_pay(self): self.index_page.click_my_order_link() # 打开新窗口, 需要切换窗口 self.index_page.switch_window() # 使用其他page对象调用 switch_window() 方法也是可以的 self.home_page.click_to_be_pay_link() self.home_page.click_pay_btn() # 又打开了新窗口 self.home_page.switch_window() self.order_pay_page.click_arrived_pay() self.order_pay_page.click_pay_btn() # 等待支付结果 time.sleep(5) assert "订单提交成功,我们将在第一时间给你发货!" == self.order_pay_page.get_tips_info()
def __init__(self, driver, base_url): self.driver = driver self.base_url = base_url self.login_page = LoginPage(driver, base_url) self.main_page = MainPage(driver, base_url) self.cart_page = CartPage(driver, base_url) self.register_page = RegisterPage(driver, base_url) self.edit_page = EditPage(driver, base_url) self.film_page = FilmPage(driver, base_url) self.internal_page = InternalPage(driver, base_url) self.wait = WebDriverWait(driver, 5)
def test_010(self): """MRYX_ST_shop010:验证购物车添加功能_购物车里增加商品的数量""" bp = BasePage(self.driver) bp.click(HomePage.sort_locator) bp.choose(SortPage.buy_locator, [1]) bp.click(HomePage.cart_locator) cp = CartPage(self.driver) for i in range(4): cp.crease(1) """断言""" assert_number = bp.get_text(CartPage.cart_number_locator) self.assertEqual("5", assert_number) ###断言 cp = CartPage(self.driver) ###删除购物车 cp.drop_cart() ###删除购物车
def __init__(self, driver): self.driver = driver self.login_page = LoginPage(driver) self.main_page = MainPage(driver) self.cart_page = CartPage(driver) self.wait = WebDriverWait(driver, 10)
def get_cart_page_instance(self): return CartPage(self.driver)