Beispiel #1
0
    def before_func(self):
        DriverUtil.get_driver()  # 获取驱动对象
        self.factory = PageFactory()

        yield  # 结束操作
        time.sleep(3)
        DriverUtil.quit_driver()  # 退出驱动对象
def list_tour():

    util = DriverUtil()
    pid = request.args.get("pid")
    start_date = request.args.get("start_date")
    end_date = request.args.get("end_date")
    tour_information = util.get_tour(start_date, end_date, pid)
    return make_response(jsonify(tour_information), 200)
    def click_to_login(self, username, pwd):
        self.login_handle.input_username(username)
        self.login_handle.input_pwd(pwd)

        # 删除disable属性
        js = 'document.getElementById("inp1").removeAttribute("disabled")'
        DriverUtil.get_mis_driver().execute_script(js)
        self.login_handle.click_btn()
Beispiel #4
0
 def test02_pay_order(self):
     self.index_page.to_order_list_page()
     #  切窗口
     DriverUtil.switch_window()
     self.order_list_page.go_pay()
     #  切窗口
     DriverUtil.switch_window()
     self.order_pay_page.confirm_pay_way()
     time.sleep(3)
     result = text_exists("订单提交成功,我们将在第一时间给你发货")
     self.assertTrue(result)
def get_truck_by_driver_id(driver_id):
    util = DriverUtil()
    if not util.check_driver(driver_id):
        return make_response(
            jsonify({"error": "This driver id does not exist!"}),
            400,
        )
    truck_id = util.check_own_truck(driver_id)
    return make_response(
        jsonify({
            "driver_id": driver_id,
            "truck_id": truck_id
        }), 200)
Beispiel #6
0
    def test01_add_goods_to_cart(self, goods_name, yuqi):
        # 搜索小米  首页 --  搜索功能
        self.indpex_page.search_goods(goods_name)
        # 点击商品进入详情页   商品搜索页 -- 进入详情页
        self.goods_search_page.to_goods_detail()
        # 点击加入购物车    商品详情页 -- 添加购物车
        self.goods_detail_page.join_to_cart()

        # 判断页面中是否存在添加成功
        time.sleep(2)
        DriverUtil.switch_page()
        # msg = self.driver.find_element_by_css_selector(".conect-title span").text
        # self.assertIn(yuqi, msg)
        result = text_exists(yuqi)
        self.assertTrue(result)
 def setUpClass(cls):
     cls.driver = DriverUtil.get_driver()  # 获取浏览器对象
     cls.index_proxy = IndexProxy()  # 首页页面业务执行对象
     cls.login_proxy = LoginProxy()
     cls.search_list_proxy = SearchListProxy()  # 搜索列表页面业务执行对象
     cls.goods_detail_proxy = GoodsDetailProxy()  # 商品详情页面业务执行对象
     cls.my_count_proxy = MyCountProxy()
Beispiel #8
0
 def setUpClass(cls):
     # 浏览器驱动
     cls.driver = DriverUtil.get_driver()
     cls.index_page = IndexProxy()
     cls.login_page = LoginProxy()
     logger.info("获取浏览器驱动对象:{}".format(cls.driver))
     logger.info("获取页面对象:{}".format((cls.index_page, cls.login_page)))
 def get_join_cart_result(self):
     """获取加入购物结果方法"""
     # 切换 frame
     driver = DriverUtil.get_driver()  # 获取浏览器对象
     # 注意: 切换 frame 操作也可以使用定位到的 iframe 元素对象
     driver.switch_to.frame(driver.find_element_by_tag_name('iframe'))
     return self.goods_detail_page.find_join_cart_result().text
Beispiel #10
0
 def setUpClass(cls):
     # 获取浏览器驱动对象
     cls.driver = DriverUtil.get_driver()
     # 首页业务层对象
     cls.index_proxy = IndexProxy()
     # 登录页业务层对象
     cls.login_proxy = LoginProxy()
Beispiel #11
0
 def setUpClass(cls):
     # 获取浏览器驱动对象
     cls.driver = DriverUtil.get_driver()
     cls.indexproxy = IndexProxy()
     cls.goodssearchproxy = GoodsSearchProxy()
     cls.proxy = GoodsDetailProxy()
     cls.driver.get("http://localhost")
Beispiel #12
0
 def setUpClass(cls) -> None:
     cls.driver = DriverUtil.get_driver()  # 浏览器对象
     cls.index_proxy = IndexProxy()  # 首页业务执行对象
     cls.my_cart_proxy = MyCartProxy()  # 我的购物车业务执行对象
     cls.order_check_proxy = OrderCheckProxy()  # 订单确认业务执行对象
     cls.order_list_proxy = OrderListProxy()  # 订单列表业务执行对象
     cls.order_pay_proxy = OrderPayProxy()  # 订单支付业务执行对象
Beispiel #13
0
 def setUpClass(cls) -> None:
     cls.driver = DriverUtil.get_driver()  # 获取浏览器对象
     cls.index_proxy = IndexProxy()  # 首页业务执行对象
     cls.goods_cart_proxy = GoodsCartProxy()  # 购物车业务执行对象
     cls.order_check_proxy = OrderCheckProxy()  # 订单确认业务执行对象
     cls.my_order_proxy = MyOrderProxy()  # 我的订单业务执行对象
     cls.order_pay_proxy = OrderPayProxy()  # 订单支付业务执行对象
Beispiel #14
0
    def __init__(self):
        super().__init__()
        self.driver = DriverUtil.get_driver()

        # 首页
        self.home_button = (By.ID, "homepage")
        # 转文字/翻译
        self.translate = (By.CLASS_NAME, 'menu-add')
        # 智能硬件
        self.intelligent_hardware = (By.CLASS_NAME, "head-menu-hardware")
        # 会员/充值
        self.membership_recharge = (By.ID, "czksc1")
        # 帮助中心
        self.help_center = (By.CLASS_NAME, "head-menu-server")
        # 企业服务
        self.enterprise_service = (By.CLASS_NAME,
                                   "head-menu-enterprise-server")
        # 下载客户端
        self.download_client = (By.LINK_TEXT, "下载客户端")
        # 立即抢购弹窗关闭按钮
        self.snap_the_popover_close_button = (
            By.XPATH, "/ html / body / div[11] / div / span")
        # 用户协议确认按钮
        self.user_agreement_confirmation_button = (
            By.XPATH, "//*[@id='p-save']/font/font")
        # 关于我们
        self.about_us = (By.LINK_TEXT, "关于我们")
Beispiel #15
0
    def setUpClass(cls) -> None:
        cls.driver = DriverUtil.get_driver()  # 获取浏览器对象

        cls.index_proxy = IndexProxy()  # 首页业务操作对象
        cls.cart_proxy = CartProxy()  # 购物车业务操作对象
        cls.my_order_proxy = MyOrderProxy()  # 订单提交操作对象
        cls.my_order_list_proxy = MyOrderListProxy()  # 我的订单业务执行对象
        cls.order_pay_proxy = OrderPayProxy()  # 订单支付业务执行对象
Beispiel #16
0
 def setUpClass(cls):
     # 初始化浏览器
     cls.driver = DriverUtil.get_driver()
     cls.index_page = IndexProxy()
     cls.cart_page = CartProxy()
     cls.cart_order_page = CartOrderProxy()
     cls.order_list_page = OrderListProxy()
     cls.order_pay_page = OrderPayProxy()
Beispiel #17
0
 def setUpClass(cls):
     # 获取浏览器驱动对象
     cls.driver = DriverUtil.get_driver()
     # 获取用例页面
     cls.index_proxy = IndexProxy()
     cls.cart_proxy = CartProxy()
     cls.order_proxy = OrderProxy()
     cls.myorder_proxy = MyOrderProxy()
     cls.orderpay_proxy = OrderPayProxy()
    def test_login(self, mobile, code, username):
        logging.info("mobile, code, username" + mobile + code + username)

        # 登录
        self.login_proxy.click_login(mobile, code)

        # 断言
        is_exist = utils.exist_text(DriverUtil.get_mp_driver(), username)
        assert is_exist
    def get_add_cart_result(self, expect):
        """获取添加购物车结果方法"""

        # 切换 frame 获取弹窗结果
        driver = DriverUtil.get_driver()
        driver.switch_to.frame(driver.find_element_by_css_selector('iframe'))

        result = self.goods_detail_handle.get_join_cart_result()
        return expect == result
Beispiel #20
0
 def setUpClass(cls):
     # 获取浏览器驱动对象
     cls.driver = DriverUtil.get_driver()
     # 首页的业务层对象
     cls.index_proxy = IndexProxy()
     # 商品列表的业务层对象
     cls.goods_search_proxy = GoodsSearchProxy()
     # 商品详情页的业务层对象
     cls.goods_detail_proxy = GoodsDetailProxy()
Beispiel #21
0
    def setUpClass(cls):
        # 获取浏览器驱动对象
        cls.driver = DriverUtil.get_driver()
        # 页面对象 -- 业务层 首页 购物车 提交订单页
        cls.index_proxy = IndexProxy()
        cls.cart_proxy = CartProxy()
        cls.order_submit_proxy = OrderSubmitProxy()

        cls.my_order_proxy = MyOrderProxy()
        cls.order_pay_proxy = OrderPayProxy()
Beispiel #22
0
    def get_join_cart_result(self):
        """获取添加购物车结果的方法"""

        # 切换 frame
        driver = DriverUtil.get_driver()
        # 注意: 除了可以使用能够代表唯一性的某一个属性的属性值及索引值以外,
        # 还可以直接获取 iframe 元素对象,完成 frame 的切换!
        driver.switch_to.frame(driver.find_element_by_css_selector('iframe'))

        return self.goods_detail_page.find_join_cart_result().text
 def setUpClass(cls):
     cls.driver = DriverUtil.get_driver()  # 获取浏览器对象
     cls.index_proxy = IndexProxy()  # 首页页面业务执行对象
     cls.login_proxy = LoginProxy()
     cls.cart_proxy = CartProxy()  # 购物车页面业务执行对象
     cls.check_order_proxy = CheckOrderProxy()  # 订单确认页面业务执行对象
     cls.order_payment_proxy = OrderPaymentProxy()  # 订单支付页面执行对象
     cls.my_count_proxy = MyCountProxy()
     cls.my_order_proxy = MyOrderProxy()  # 我的订单页面业务执行对象
     cls.payment_success_proxy = PaymentSuccessProxy()
    def test_login_success(self):
        username = "******"
        pwd = "testpwd123"
        nickname = "管理员"

        self.login.click_to_login(username, pwd)

        # 断言
        is_exit = utils.exist_text(DriverUtil.get_mis_driver(), nickname)
        assert is_exit
 def setUpClass(cls) -> None:
     cls.driver = DriverUtil.get_driver()
     cls.index_proxy = IndexProxy()  # 首页
     cls.login_proxy = LoginProxy()  # 登录页面
     cls.my_account_proxy = MyAccountProxy()  # 我的账户
     cls.cart_paroxy = CartProxy()  # 购物车
     cls.check_roder_proxy = CheckOrderProxy()  # 核对订单
     cls.payment_proxy = PaymentProxy()  # 订单支付页面
     cls.my_order_proxy = MyOrderProxy()  # 我的订单
     cls.payment_proxy = PaymentProxy()  # 订单支付
Beispiel #26
0
    def add_goods_to_cart(self, goods_name):
        """
        """
        DriverUtil.switch_to_webview()
        time.sleep(3)

        DriverUtil.switch_to_last_window()
        self.home_handle.click_goods(goods_name)
        time.sleep(3)

        DriverUtil.switch_to_last_window()
        self.home_handle.click_buy_btn()
        time.sleep(3)

        DriverUtil.switch_to_last_window()
        self.home_handle.click_add_cart_btn()
 def exist_text(text):
     """
     判断页面中是否存在指定的文本内容
     :param text: 文本内容
     :return: True:存在; False:不存在
     """
     try:
         xpath = "//*[contains(text(), '{}')]".format(text)
         element = DriverUtil.get_driver().find_element_by_xpath(xpath)
         return element is not None
     except Exception as e:
         print("current page_tpshop not contains [{}]".format(text))
         logging.exception(e)
         return False
Beispiel #28
0
    def test_write_note(self, title, content, toast):
        print("test_write_note title={} content={} toast={}".format(
            title, content, toast))
        allure.attach(
            "用例参数:",
            "title={} content={} toast={}".format(title, content, toast))

        # 进入‘写日记’页面
        self.home_proxy.to_write_note_page()

        # 写日记
        self.write_note_proxy.write_note(title, content)

        # 截图
        png = DriverUtil.get_driver().get_screenshot_as_png()
        allure.attach("截图", png, allure.attach_type.PNG)

        assert utils.is_exist_toast(toast)
Beispiel #29
0
 def tearDownClass(cls):
     DriverUtil.quit_driver()
Beispiel #30
0
 def tearDownClass(cls) -> None:
     DriverUtil.quit_driver()  # 退出浏览器对象