【技术实现步骤摘要】
测试中的断言处理方法、装置、设备及存储介质
本申请涉及互联网测试领域,尤其涉及一种测试中的断言处理方法、装置、设备及存储介质。
技术介绍
在开发软件的过程中,用户需要实际运行所编写的代码以确保程序的正确性。当软件变得越来越大,再去添加新的功能或做一些新的改动时,就很容易带来新的问题,甚至会使程序无法正常运行。然而要手动的运行代码,测试代码的可行性也是非常枯燥以及非常耗费时间的事情。为了减少这种手动测试,目前主要通过创建单元测试来自动完成测试的工作。当修改代码或者添加新功能后,执行单元测试来保证代码运行无误,所有测试工作都由单元测试自动完成。在单元测试只是判断在某一个时刻,程序运行的值和预期的值是否一致。例如在Junit测试框架中,使用断言即一些辅助函数来帮助开发人员确定某些被测试函数是否工作正常。但是,目前的单元测试中容易出现以下问题:1.非退出断言,需要额外执行一个单独的异常处理函数;2.断言信息不会体现在测试报告中;3.两种断言分布在两个测试类中,一个静态,一个动态,方式不统一。< ...
【技术保护点】
1.一种测试中的断言处理方法,其特征在于,所述方法包括:/n获取测试框架,在所述测试框架中设置至少两个断言,所述至少两个断言包括至少一个静态断言和至少一个动态断言,所述测试框架为基于类的单元测试;/n将至少一个静态断言和至少一个动态断言划分到一个测试类;/n将每个测试类中的断言的使用方式设置为一致,并将多个测试类封装至待测试的应用中;/n在编译所述应用或运行所述应用时,执行所述测试框架;/n在执行所述测试框架过程中,分别调用所述测试类中的静态断言或动态断言对所述应用进行验证,并监听各测试类中的断言的验证状态信息;/n当监听到所述测试类中的静态断言失败时,生成第一断言信息;当 ...
【技术特征摘要】
1.一种测试中的断言处理方法,其特征在于,所述方法包括:
获取测试框架,在所述测试框架中设置至少两个断言,所述至少两个断言包括至少一个静态断言和至少一个动态断言,所述测试框架为基于类的单元测试;
将至少一个静态断言和至少一个动态断言划分到一个测试类;
将每个测试类中的断言的使用方式设置为一致,并将多个测试类封装至待测试的应用中;
在编译所述应用或运行所述应用时,执行所述测试框架;
在执行所述测试框架过程中,分别调用所述测试类中的静态断言或动态断言对所述应用进行验证,并监听各测试类中的断言的验证状态信息;
当监听到所述测试类中的静态断言失败时,生成第一断言信息;当监听到所述测试类中的动态断言失败时,生成第二断言信息;
执行完所述测试框架后,生成测试报告,并将所述第一断言信息和所述第二描述信息统计到所述测试报告中;所述第一断言信息包括出错信息,所述出错信息包括错误类型和错误位置,所述第二断言信息包括诊断信息和运行逻辑的异常断言点。
2.根据权利要求1所述的方法,其特征在于,在每个测试类中,存在至少一条静态断言成功的描述信息,所述第一断言信息是指每条断言成功的静态断言的描述信息;所述测试报告包括测试类中每条断言成功的静态断言的断言信息、以及每条断言成功的动态断言的断言信息。
3.根据权利要求2所述的方法,其特征在于,所述使用方式包括:被调用次数、断言某方法被调用过、测试通过用例和测试失败用例;
所述测试类包括:所有测试框架测试类的超类、对要运行的测试进行分组的类、制定单个测试方法、用于在测试框架中运行测试的类以及运行测试套件的结果。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
生成多个测试用例,所述测试用例是指将软件测试的行为转化成可管理的模式的一组条件或变量,所述测试用例用于确定应用软件或软件系统是否正确工作;
分别将每个测试用例覆盖部分或全部未被覆盖过的测试类,直至所有测试类均被测试用例覆盖。
5.根据权利要求1-4中任一项所述的方法,其特征在于,所述监听各测试类中的断言的验证状态信息,包括:
在断言的各测试类中分别引入hook程序;
通过所述hook程序监听各测试类中变量或条件,以监听测试流程中的断言状态;
当所述hook程序监听到测试类中的变量或条件变化时,获取变量或条件发生变化的所述验证状态信息;
所述方法还包括:
当监听到验证状态信息为非退出断言状态时,不中断所述测试脚本的运行,直到生成所有验证结果;其中,所述非退出断言是指对测试用例中的测试参数使用断言时,退出程序不是因所述测试参数异常而退出程序。
6.根据权利要求5所述的方法,其特征在于,所述执行所述测试框架之前,所述方法还包括:
生成配置文件,所述配置文件指示自动化测试运行的测试环境以及需要进行的测试场景映射关系;所述配置文件包括断言的起始位置、执行的断言操作和执行断言操作得到的期望值,所述断言的起始位置用于判定断言操作在所述应用的文件的起始执行位置,所述期望值用于判定测试执行结果是否符合测试的要求...
【专利技术属性】
技术研发人员:吴少华,
申请(专利权)人:平安普惠企业管理有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。