求助,BeautifulReport中怎样将同一个方法中不同的case分开显示

# coding=utf-8
import time,os
import unittest
from framework.browser_engine import BrowserEngine
from WebPages.LoginPage import LoginPage
from framework.CommonUtil import CommonUtil
from framework.zqexcelutils import ZqOperationExcel
from framework.sendmail import SendEmail
from BeautifulReport import BeautifulReport

class UserLogin(unittest.TestCase):
    global img_file
    def open_browse(self):
        browse = BrowserEngine(self)
        self.driver = browse.open_browser(self)

    def quit_browse(self):
        self.driver.quit()


    def test_login_success(self):

        self.zqsendmail = SendEmail()
        self.com_util = CommonUtil()
        self.opera_excel = ZqOperationExcel()
        # 定义两个列表
        pass_count = []
        fail_count = []
        # 获取用例行数

        exl_path = os.path.abspath(os.path.join("data"))
        exl_name = exl_path + '\\testCase.xls'
        rows_count = ZqOperationExcel(file_name=exl_name, sheet_id=1).get_lines()


        # 定义行
        a = 1

        for i in range(1, rows_count):
            self.open_browse()
            case_name = ZqOperationExcel(file_name=exl_name, sheet_id=1).get_cell_value(a, 0)
            user_name = ZqOperationExcel(file_name=exl_name, sheet_id=1).get_cell_value(a, 1)
            user_pwd = ZqOperationExcel(file_name=exl_name, sheet_id=1).get_cell_value(a, 2)
            excepted = ZqOperationExcel(file_name=exl_name, sheet_id=1).get_cell_value(a, 3)
            remarks = ZqOperationExcel(file_name=exl_name, sheet_id=1).get_cell_value(a, 4)
            login = LoginPage(self.driver)
            login.user_account_search(user_name)  # 调用页面对象中的方法
            login.password_search(user_pwd)
            login.send_submit_btn()  # 调用页面对象类中的点击搜索按钮方法
            time.sleep(1)
            get_fail_text = login.get_page_url()
            get_except_text = excepted
            self.__dict__['_testMethodDoc'] = remarks  #将EXLcase_name赋值给页面用例描述
            # 调用基类截图方法

            login.save_img()
            # 断言
            # assert get_except_text in get_fail_text
            a = a + 1

            try:
                if self.com_util.is_contain(get_except_text, get_fail_text):
                    print("预期结果:" + excepted)
                    print("实际结果:" + get_fail_text)
                    print(case_name + '-----√-Test Pass.--------' + remarks)
                    pass_count.append(i)
                else:
                    print("预期结果:" + excepted)
                    print("实际结果:" + get_fail_text)
                    print(case_name + '-----×-Test Fail.--------' + remarks)
                    fail_count.append(i)
            except Exception as e:
                print('Fail', format(e))
            self.quit_browse()

        print("登录有效用例的总数", len(pass_count) + len(fail_count))
        print("登录有效用例成功的个数", len(pass_count))
        print("登录有效用例失败个数", len(fail_count))
        # 发送自动化测试报告
        # self.zqsendmail.send_main2(pass_count, fail_count)

    def test_login_fail(self):

        """
        测试登录失败用例
        """
        self.zqsendmail = SendEmail()
        self.com_util = CommonUtil()
        self.opera_excel = ZqOperationExcel()
        # 定义两个列表
        pass_count = []
        fail_count = []
        # 获取用例行数

        exl_path = os.path.abspath(os.path.join("data"))
        exl_name = exl_path + '\\testCase.xls'
        rows_count = ZqOperationExcel(file_name=exl_name, sheet_id=0).get_lines()
        # 定义行
        a = 1
        for i in range(1, rows_count):
            self.open_browse()
            case_name = ZqOperationExcel(file_name=exl_name, sheet_id=0).get_cell_value(a, 0)
            user_name = ZqOperationExcel(file_name=exl_name, sheet_id=0).get_cell_value(a, 1)
            user_pwd = ZqOperationExcel(file_name=exl_name, sheet_id=0).get_cell_value(a, 2)
            excepted = ZqOperationExcel(file_name=exl_name, sheet_id=0).get_cell_value(a, 3)
            remarks = ZqOperationExcel(file_name=exl_name, sheet_id=0).get_cell_value(a, 4)
            login = LoginPage(self.driver)
            login.user_account_search(user_name)  # 调用页面对象中的方法
            login.password_search(user_pwd)
            time.sleep(2)
            login.send_submit_btn()  # 调用页面对象类中的点击搜索按钮方法
            time.sleep(1)
            get_fail_text = login.get_real_text()
            get_except_text = excepted
            self.__dict__['_testMethodDoc'] = remarks #将EXLcase_name赋值给页面用例描述
            # 调用基类截图方法
            login.save_img()
            # 断言
            # assert get_except_text in get_fail_text

            a = a + 1
            try:
                if self.com_util.is_contain(get_except_text, get_fail_text):
                    print("预期结果:" + excepted)
                    print("实际结果:" + get_fail_text)
                    print(case_name + '-----√-Test Pass.--------' + remarks)
                    pass_count.append(i)
                else:
                    print("预期结果:" + excepted)
                    print("实际结果:" + get_fail_text)
                    print(case_name + '-----×-Test Fail.--------' + remarks)
                    fail_count.append(i)
            except Exception as e:
                print('Fail', format(e))
            self.quit_browse()

        print("登录无效用例的总数", len(pass_count) + len(fail_count))
        print("登录无效用例成功的个数", len(pass_count))
        print("登录无效用例失败个数", len(fail_count))
        # 发送自动化测试报告
        # self.zqsendmail.send_main2(pass_count, fail_count)

if __name__ == '__main__':
    unittest.main()

这是我执行后的出的报告,同一个方法运行结果输出在一条记录中,用例描述被修改为我最有一个用例的描述
我同一个方法的case是从一个exl 中sheet 循环读取出来的,现在一个方法记录着所有case的结果,现在就想报告中一个case展示一条记录,求大神指导下,萌新研究了太久,还是折腾不出来

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值