Esempio n. 1
0
    def test(self):
        print('>>>>>>>>>>>>>>>>>>>未填收货地址 >> 跳转至收货地址填写<<<<<<<<<<<<<<<<<<<<<<')
        # 环境检测
        intializating.initialization.environmentPrepar(self)
        time.sleep(1)
        # 清空收货地址
        MySql.db_NotQuery(self, dict_load['mysql']['清空收货地址db'],
                          dict_load['mysql']['清空收货地址sql'])
        time.sleep(1)
        # 选取商品
        get_goods.get_goods(self)
        time.sleep(1)
        loc = (By.CSS_SELECTOR, dict_load['商品']['立即兑换'])
        WebDriverWait(self.driver, 5).until(
            expected_conditions.visibility_of_element_located(loc))
        means.click(self, 'css', dict_load['商品']['立即兑换'])
        time.sleep(1)
        # 获取跳转收货地址填写页面截图
        means.get_img(self)
        time.sleep(1)
        # 获取收货地址页面元素
        text = means.get_text(self, 'css', dict_load['C端页面元素']['收货地址页面'])
        text1 = re.search(r"^(....)", str(text))
        text2 = text1.group()
        time.sleep(1)

        print(
            '********************************状态*******************************************'
        )
        print('跳转到页面信息:', format(str(text)))
        print(
            '********************************断言*******************************************'
        )
        # 断言
        assert text2 == '收货地址'
        print('用例通过!')
Esempio n. 2
0
    def test(self):
        print(
            '###############>>>>>>选择数量大于库存数量,提示库存不足,无法下单>>>>>>>#################'
        )
        # 环境检测
        intializating.initialization.environmentPrepar(self)
        time.sleep(1)
        # 获取下单前积分值
        jifen_before = table.read(self, 0)
        time.sleep(1)
        # 获取下单前菜籽值
        caiz_before = intializating.initialization.get_caizi_values(self)
        time.sleep(1)
        # 订单下单前订单总数
        count_order_on_db_before = intializating.initialization.get_countOrder_values(
            self)
        time.sleep(1)
        # 判断积分是否能足以支付商品
        get_goods.get_goods(self)
        time.sleep(2)
        loc = (By.CSS_SELECTOR, dict_load['商品']['点击规格'])
        WebDriverWait(self.driver, 5).until(
            expected_conditions.visibility_of_element_located(loc))
        means.click(self, 'css', dict_load['商品']['点击规格'])
        time.sleep(2)
        means.click(self, 'css', dict_load['商品']['输入商品数量'])
        means.input(self, 'css', dict_load['商品']['输入商品数量'], '100')
        time.sleep(2)
        means.click(self, 'css', dict_load['商品']['保存'])
        time.sleep(2)
        # 这里手动执行不会触发查询库存接口
        kucunbuzu = means.get_text(self, 'css', dict_load['商品']['立即兑换'])
        '''''' '''
        loc = (By.CSS_SELECTOR,dict_load['商品']['兑换'])
        WebDriverWait(self.driver,5).until(expected_conditions.visibility_of_element_located(loc))
        means.click(self, 'css', dict_load['商品']['兑换'])
        time.sleep(2)
        loc = (By.CSS_SELECTOR,dict_load['商品']['库存不足'])
        WebDriverWait(self.driver,5).until(expected_conditions.visibility_of_element_located(loc))
        kucunbuzu = means.get_text(self,'css',dict_load['商品']['库存不足'])
        '''
        # 购买商品后积分余额
        jifen_after_pay = table.read(self, 1)
        # 购买商品后菜籽余额
        caizi_after_pay = intializating.initialization.get_caizi_values(self)
        # 购买商品后总订单量
        count_order_on_db_after = intializating.initialization.get_countOrder_values(
            self)
        print(
            '********************************金额*******************************************'
        )
        print('原先用户菜籽:{1}'.format(self, caiz_before))
        print('原先用户积分:{1}'.format(self, jifen_before[0]))
        print('原先数据库订单数:{1}'.format(self, count_order_on_db_before))
        print(
            '******************************剩余金额*****************************************'
        )
        print('剩余积分:{1}'.format(self, jifen_after_pay[0]))
        print('剩余菜籽:{1}'.format(self, caizi_after_pay))
        print(
            '********************************订单*******************************************'
        )
        print('数据库订单总数:{1}'.format(self, count_order_on_db_after))
        print(
            '********************************断言*******************************************'
        )

        try:
            #assert kucunbuzu == '商品库存不足(10000)'
            assert kucunbuzu == '库存不足'
            print('提示【库存不足】,无法下单!')
            assert count_order_on_db_after == count_order_on_db_before
            print('数据库用例执行前和用例执行后订单总数一致,无法下单!')
            assert jifen_after_pay[0] == jifen_before[0]
            print('用例执行前积分余额和用例执行后积分余额一致,无法下单!')
            assert caizi_after_pay == caiz_before
            print('用例执行前菜籽余额和用例执行后菜籽余额一致,无法下单!')

        except:
            print('断言出现问题,请检查!')

        # excel数据清理
        table.wipe_excel(self)
Esempio n. 3
0
    def test(self):
        print(
            '###############>>>积分不足>>>提示不足,无法下单>>>查看状态,未进入待发货#################'
        )
        # 环境检测
        intializating.initialization.environmentPrepar(self)
        time.sleep(1)
        # 获取下单前积分值
        jifen_before = table.read(self, 0)
        time.sleep(1)
        # 获取下单前菜籽值
        caiz_before = intializating.initialization.get_caizi_values(self)
        time.sleep(1)
        # 订单下单前订单总数
        count_order_on_db_before = intializating.initialization.get_countOrder_values(
            self)
        time.sleep(1)
        # 商品选择
        means.click(self, 'css', dict_load['商品']['goods3'])
        time.sleep(1)
        means.clear(self, 'css', dict_load['商品']['输入商品数量'])
        means.input(self, 'css', dict_load['商品']['输入商品数量'], '100')
        time.sleep(1)
        means.click(self, 'css', dict_load['商品']['保存'])
        loc = (By.CSS_SELECTOR, dict_load['商品']['立即兑换文本'])
        WebDriverWait(self.driver, 5).until(
            expected_conditions.visibility_of_element_located(loc))
        text = means.get_text(self, 'css', dict_load['商品']['立即兑换文本'])
        # 购买商品后积分余额
        jifen_after_pay = table.read(self, 1)
        # 购买商品后菜籽余额
        caizi_after_pay = intializating.initialization.get_caizi_values(self)
        # 购买商品后总订单量
        count_order_on_db_after = intializating.initialization.get_countOrder_values(
            self)
        print(
            '********************************金额*******************************************'
        )
        print('原先用户积分:{1}'.format(self, jifen_before[0]))
        print('原先用户菜籽:{1}'.format(self, caiz_before))
        print('原先数据库订单数:{1}'.format(self, count_order_on_db_before))
        print(
            '******************************剩余金额*****************************************'
        )
        print('test_1后剩余积分:{1}'.format(self, jifen_after_pay[0]))
        print('test_1后剩余菜籽:{1}'.format(self, caizi_after_pay))
        print(
            '********************************订单*******************************************'
        )
        print('数据库订单总数:{1}'.format(self, count_order_on_db_after))
        print(
            '********************************断言*******************************************'
        )
        # 断言提示积分不足,订单数没有增加
        try:
            assert text == '积分不足'
            print('积分不足,无法下单!')
            assert int(count_order_on_db_before) == int(
                count_order_on_db_after)
            print('无法下单!订单没有增加')
            assert int(caizi_after_pay) == int(caiz_before)
            print('无法下单,菜籽不变!')
            assert int(jifen_before[0]) == int(jifen_after_pay[0])
            print('无法下单,积分不变!')

        except:
            print('断言失败!')

        # excel数据清理
        table.wipe_excel(self)
Esempio n. 4
0
    def test(self):
        print('>>>>>>>>>>>>>>>>>>>确认订单页修改地址,下单成功,收货地址更改修改后地址<<<<<<<<<<<<<<<<<<<<<<')
        # 环境检测
        intializating.initialization.environmentPrepar(self)
        time.sleep(1)
        # 获取下单前积分值
        jifen_before = table.read(self,0)
        time.sleep(1)
        # 获取下单前菜籽值
        caiz_before = intializating.initialization.get_caizi_values(self)
        time.sleep(1)
        # 订单下单前订单总数
        count_order_on_db__before = intializating.initialization.get_countOrder_values(self)
        time.sleep(1)
        # 判断积分是否能足以支付商品
        get_goods.get_goods(self)
        # 获取之前的收货地址
        address = means.get_text(self,'css',dict_load['收货地址']['收货地址'])
        time.sleep(2)
        means.click(self,'css',dict_load['商品']['立即兑换'])
        # 获取商品价格和商品邮费之和
        count_jifen_pay = means.get_text(self,'css',dict_load['商品']['商品积分价格和积分邮费之和'])
        time.sleep(1)
        # 修改收货地址
        means.click(self,'css',dict_load['收货地址']['订单页面修改地址'])
        time.sleep(2)
        inputAddr.input_addr(self)
        time.sleep(1)
        means.click(self,'css',dict_load['商品']['兑换'])
        time.sleep(1)
        means.click(self,'css',dict_load['C端页面元素']['查看订单'])
        time.sleep(2)
        means.click(self,'css',dict_load['C端页面元素']['待发货列表商品1'])
        time.sleep(2)
        new_address = means.get_text(self,'css',dict_load['C端页面元素']['收货地址信息'])
        time.sleep(1)
        # 购买商品后积分余额
        jifen_after_pay = table.read(self,1)
        # 购买商品后菜籽余额
        caizi_after_pay = intializating.initialization.get_caizi_values(self)
        # 支付商品的菜籽
        caiz_Pay = table.read(self,2)
        # C端新增订单号
        new_OrderNumber_On_C_h5 = table.read(self,4)
        # B端新增订单号
        new_OrderNumber_On_B_h5 = table.read(self,3)
        # 数据库新增订单号
        new_OrderNumber_On_db = intializating.initialization.get_NewOrderNumber_On_db(self)
        # 购买商品后总订单量
        count_order_on_db_after = intializating.initialization.get_countOrder_values(self)
        # 判断订单状态>>>>待发货
        status = table.read(self,5)
        print('********************************金额*******************************************')
        print('原先用户积分:{1}'.format(self,jifen_before[0]))
        print('原先用户菜籽:{1}'.format(self,caiz_before))
        print('原先数据库订单数:{1}'.format(self,count_order_on_db__before))
        print('购买商品花费的积分:{1}'.format(self,count_jifen_pay))
        print('购买商品花费的菜籽:{1}'.format(self,caizi_after_pay))
        print('******************************剩余金额*****************************************')
        print('剩余积分:{1}'.format(self,jifen_after_pay[0]))
        print('剩余菜籽:{1}'.format(self,caizi_after_pay))
        print('********************************订单*******************************************')
        print('B端新增订单号:{1}'.format(self,new_OrderNumber_On_B_h5[0]))
        print('C端新增订单号:{1}'.format(self,new_OrderNumber_On_C_h5[0]))
        print('数据库新增订单号:{1}'.format(self,new_OrderNumber_On_db))
        print('数据库订单总数:{1}'.format(self,count_order_on_db_after))
        print('订单状态:{1}'.format(self,status[0]))
        print('********************************断言*******************************************')
        print(r"修改前地址:",format(address))
        print(r"修改后地址:",format(new_address))
        assert int(jifen_before[0]) == int(jifen_after_pay) + int(count_jifen_pay)
        print('用户积分断言成功!')
        assert int(count_order_on_db_after) == int(count_order_on_db__before) + 1
        print('订单写入数据库成功!')
        assert int(caiz_before) == int(caizi_after_pay[0]) + int(caiz_Pay[0])
        print('商家菜籽断言成功!')


        # excel数据清理
        table.wipe_excel(self)
Esempio n. 5
0
    def test(self):
        print('>>>>>>>>>>>>>选择规格/数量/收货地址下单成功积分、菜籽、预存款扣除数额准确,状态切入待发货,C端B端生成订单<<<<<<<<<<<<<<')
        # 环境检测
        intializating.initialization.environmentPrepar(self)
        time.sleep(1)
        # 获取下单前积分值
        jifen_before = table.read(self,0)
        time.sleep(1)
        # 获取下单前菜籽值
        caiz_before = intializating.initialization.get_caizi_values(self)
        time.sleep(1)
        # 订单下单前订单总数
        count_order_on_db_before = intializating.initialization.get_countOrder_values(self)
        time.sleep(1)
        # 判断积分是否能足以支付商品
        get_goods.get_goods(self)
        # 填写收货地址
        means.click(self,'css',dict_load['收货地址']['点击收货地址'])
        time.sleep(1)
        inputAddr.input_addr(self)
        time.sleep(1)
        means.click(self,'css',dict_load['商品']['立即兑换'])
        # 获取商品积分价格和商品积分邮费
        Price = means.get_text(self,'css',dict_load['商品']['商品积分价格和积分邮费之和'])
        means.click(self, 'css', dict_load['商品']['兑换'])
        # 购买商品后积分余额
        jifen_after_pay = table.read(self,1)
        # 购买商品后菜籽余额
        caizi_after_pay = intializating.initialization.get_caizi_values(self)
        # 支付商品的菜籽
        caiz_Pay = table.read(self,2)
        # C端新增订单号
        new_OrderNumber_On_C_h5 = table.read(self,4)
        # B端新增订单号
        new_OrderNumber_On_B_h5 = table.read(self,3)
        # 购买商品后总订单量
        count_order_on_db_after = intializating.initialization.get_countOrder_values(self)
        # 判断订单状态>>>>待发货
        status = table.read(self,5)
        print('********************************金额*******************************************')
        print('原先用户积分:{1}'.format(self,jifen_before[0]))
        print('原先用户菜籽:{1}'.format(self,caiz_before))
        print('原先数据库订单数:{1}'.format(self, count_order_on_db_before))
        print('购买商品花费的积分:{1}'.format(self,Price))
        print('购买商品花费的菜籽:{1}'.format(self,caiz_Pay[0]))
        print('******************************剩余金额*****************************************')
        print('剩余积分:{1}'.format(self,jifen_after_pay[0]))
        print('剩余菜籽:{1}'.format(self,caizi_after_pay))
        print('********************************订单*******************************************')
        print('C端新增订单号:{1}'.format(self,new_OrderNumber_On_C_h5[0]))
        print('B端新增订单号:{1}'.format(self,new_OrderNumber_On_B_h5[0]))
        print('数据库订单总数:{1}'.format(self,count_order_on_db_after))
        print('订单状态:{1}'.format(self,status[0]))
        print('********************************断言*******************************************')
        # 断言
        try:
            assert int(jifen_before[0]) == int(Price)  + int(jifen_after_pay[0]),int(caiz_before) == int(caiz_before) + int(caiz_Pay[0])
            assert int(count_order_on_db_after) == int(count_order_on_db_before) + 1
            print('商品积分扣除正确!')
            print('商家菜籽扣除正确!')
            print('订单写入数据库成功!')
        except:
            return False

        # excel数据清理
        table.wipe_excel(self)