1、实战的思路
我们实战的思路是找一个APP,先设计几个典型的手工测试场景、然后用自动化测试对手工测试场景做机械的流程覆盖、然后根据使用再进行封装、最后通过参数化和数据驱动实现不同的覆盖,完成一个简单的实战演练
2、自动化测试目的
我们做自动化测试要有自己的目的,不能为了做自动化测试而做自动化测试,一般来说会有如下几个目的
1、将手工测试的用例自动化,提高测试的频率(如自动化冒烟测试、自动化回归测试等),这个也是自动化测试最重要的目的
2、在手工测试的基础上,提高测试覆盖率。手工测试要投入人力,而自动化测试实现后,采用数据驱动的形式,输入不同的数据就可以执行足够多的测试
3、对于手工测试无法测试的常见,利用自动化测试作为补充。例如超大的数据、高并发等需要用工具的常见
4、自动化性能测试等。
我们这次实战以将手工测试用例实现自动化来作为目的,做一个APP自动化测试简单的演练。在开始自动化测试之前,我们首先要设计好手工测试的常见和流程,然后才能设计合适的自动化测试流程。
3、被测APP简单介绍
我们还是拿前面做appium功能验证的随手记来这个演练。随手记是我用了差不多10年的一款记账APP,可以实现自己的账号、预算、记账、生成图表等,完全可以满足个人记账的需求。
由于我们是做演练,所以并不会覆盖该APP的所有模块,我们只测最常用的记一笔里面的支出、收入、转账三个功能,并验证输入不同的参数跟我们记账操作相关连的地方的变化是否正确。
说明:由于我们只测了APP中一个模块的几个功能,并没有考虑APP所有的功能,所以后面根据我们手工测试流程设计出来的自动化测试流程,并不能满足该APP所有流程的测试,只是满足这3个功能的测试要求,无法做到非常通用,只是提供一个思路而已
4、手工测试用例流程
5.1支出的测试流程
页面如上我们考虑输入、输出、和检查点
输入:数量、分类、账户、时间、成员、商家、项目、备注
输出:保存后成功记录
检查点:
流水变化:
1、新增一条流水,时间、类型、数量、账户与记账的输入相同
2、流水汇总结余减少记账数量、支出增加记账数量
3、与输入时间的全年汇总数据总结余减少记账数量、支出增加记账数量
4、与输入时间对应的月份数据结余减少记账数量
账号变化:
1、选择的账号结余减少记账数量、流入不变、流出增加记账数量
图表变化
图表我们只测默认月份图标
分类支出
1、时间所在月份总支持增加记账数量
2、所述分类的一级分类数量增加记账数量
3、如果记账之前没有,则新增一条分类数据
二级支出
1、时间所在月份总支持增加记账数量
2、所述分类的二级分类数量增加记账数量
3、如果记账之前没有,则新增一条分类数据
自动化测试流程
步骤一、记账前记录初始值
1、流水初始值:输入数据时间对应的月份、年份记录汇总数据的初始值
2、账户初始值:找到记账对应的账号,记录初始余额、流入、流出
3、图表初始值:找到日期对应的月份图表,如有有一级分类数据则记录初始值、如果没有则记录为0
步骤二、记账
步骤三、记账后找到变化后的值
1、找到新增加的流水,记录流水时间、类型、数量、账户
2、流水汇总数据记账后的值
3、账户记账后的余额、流入、流出
4、记录记账后找到日期对应的月份图表,记录对应分类数值
步骤四、计算实际差值
步骤五、对实际差值和记账的数量进行断言
4.2收入记账
输入:数量、分类、账户、时间、备注
输出:保存后成功记录
检查点:
流水变化:
1、新增一条流水,时间、类型(对于记账的二级类型)、数量、账户与记账的输入相同
2、流水汇总结余增加记账数量、收入增加记账数量
3、与输入时间的全年汇总数据总结余增加记账数量、收入增加记账数量
4、与输入时间对应的月份数据结余增加记账数量
账号变化:
1、选择的账号结余增加记账数量、流入增加记账数量、流出不变
图表变化
图表我们只测默认月份图标
1、时间所在月份总支持增加记账数量
2、所述分类的一级分类数量增加记账数量
3、如果记账之前没有,则新增一条分类数据
自动化测试流程
步骤一、记账前记录初始值
1、流水初始值:输入数据时间对应的月份、年份记录汇总数据的初始值
2、账户初始值:找到记账对应的账号,记录初始余额、流入、流出
3、图表初始值:记录分类收入和二级收入,找到日期对应的月份图表,如有分类数据则记录初始值、如果没有则记录为0
步骤二、记账
步骤三、记账后找到变化后的值
1、找到新增加的流水,记录流水时间、类型、数量、账户
2、流水汇总数据记账后的值
3、账户记账后的余额、流入、流出
4、记录记账后找到日期对应的月份图表,记录对应分类数值
步骤四、计算实际差值
步骤五、对实际差值和记账的数量进行断言
4.3转账记账
输入:数量、账户、时间、成员、商家、项目、备注
输出:保存后成功记录
检查点:
流水变化:
1、新增一条流水,时间、类型、数量、账户与记账的输入相同
2、流水汇总结余、收入、支出保持不变
3、与输入时间的全年汇总数据总结余减少记账数量、支持增加记账数量
4、与输入时间对应的月份数据结余减少记账数量
账号变化:
1、转出的账户数量减少,转入的账户数量增加
图表无变化,不关注
自动化测试流程
步骤一、记账前记录初始值
1、流水初始值:记录最上面结余、收入、支出的数额
2、账户初始值:找到账户页面最上方净资产、资产、负债、转出账户的总额、流入、流出,转入账户的总额、流入、流出
步骤二、记账
步骤三、记账后找到变化后的值
1、找到新增加的流水,记录流水时间、类型、数量、账户
2、记录最上面结余、收入、支出的数额
3、账户记账后的找到账户页面最上方净资产、资产、负债、转出账户的总额、流入、流出,转入账户的总额、流入、流出
步骤四、计算实际差值
步骤五、对实际差值和记账的数量进行断言