移动APP测试用例
2025-09-04 10:30:08 0 举报
AI智能生成
移动考勤
作者其他创作
大纲/内容
登录
正常登录
tc-P0:输入正确的用户名和密码,滑块验证码通过,正常登陆(进入默认页面-应用工作台)
pc:账号、密码来自工程项目-花名册农民工的手机号、默认密码(Yh@123456)
新增一个工种类型为管理人员的农民工
能正常登录
新增一个工种类型为建筑工人的农民工
能正常登录
tc-P1:登录时密码显示密文,可切换
登录页面输入密码,页面是否显*处理
显示******
切换显示密码,是否可以看见刚输入的密码
显示输入的密码
异常登录操作
tc-P1:不输入任何信息,点击登录
无法登录,提示用户名和密码不能为空
tc-P2:不输入用户名,输入存在的密码,点击登录
无法登录,提示用户名不能为空
tc-P2:输入存在的用户名,不输入密码,点击登录
无法登录,提示密码不能为空
tc-P3:输入存在的用户名、错误的密码,点击登录
登录失败,提示用户名或密码错误
tc-P3:输入用户名(错误的)、密码,点击登录
登录失败,提示用户名或密码错误
tc-P2:输入正确的用户名和密码,但密码未区分大小写
登录失败,提示用户名或密码错误
tc-P3:在合法的用户名或密码前/后插入空格
登录成功
tc-P3:在合法的用户名或密码中间插入空格
登录失败,提示用户名或密码错误
tc-P2:输入已经退场的用户名、密码
提示:登录失败,用户未入场
tc-P2:输入未入场的用户名、密码
提示:登录失败,用户未入场
tc-P3:验证APP重新启动后,登录页用户名、密码输入框内容是否被清空
tc-P2:成功登录后,退出登录:二次确认“是否退出登录”返回APP登录页面
tc-P2:成功登录后,杀掉进程,下次打开APP,直接是登录状态,自动进入默认页面
登录限制
tc-P1:新用户初次登录会绑定设备,登录成功后,数据库会产生一条绑定数据
新增用户A,登陆成功
查看数据库的绑定数据,进行核对设备标识正确
tc-P2:用户绑定设备后,登录另外一台设备,登录失败,提示:当前登录设备与绑定设备不一致
新增用户B,登陆成功
查看数据库的绑定数据,进行核对
用户B,在另外一台设备登陆
登陆失败,提示:******
tc-P2:未绑定设备的用户,登录已绑定用户的设备,登录失败,提示:当前登录设备与绑定设备不一致
新增用户C,登陆用户B使用后的设备
登陆失败,提示:******
tc-P2:用户解除绑定的设备后,登录另外一台新设备,能登录成功,并且新生成一条绑定数据。
新增用户B,登陆成功
查看数据库的绑定数据,进行核对
用户B,后台解除绑定
解除绑定,历史的绑定数据状态变成已删除;
用户B,在另外一台新设备登陆,登录成功
登陆成功,新增一条绑定数据
tc-P3:用户解除绑定的设备后,再次登录该设备,能登录成功
新增用户C,登陆成功
查看数据库的绑定数据,进行核对
用户C,解除绑定
解除绑定,历史的绑定数据状态变成已删除;
用户C再次登录该设备登陆,登录成功
登陆成功,数据库会另外新增一条绑定数据
token时效
tc-P1:场景:token一直有效,完全退出应用程序,重新启动应用程序,仍保持登录状态
tc-P1:场景:登录后,解绑设备,token失效,查看是否能操作APP功能界面/会不会继续上报轨迹
tc-P3:场景:用户登录后,APP检查到有新的版本,进行版本升级后,不影响登录状态
用户A安装APP后,进行登录成功
更新APP迭代版本号,升级一个版本
用户A进行版本升级
登录状态不变
tc-P2:场景:用户已登录,然后用户被退场,界面操作时,弹出提示:用户已退场,请联系管理员
tc-P2:场景:验证账号单点登录,登录互踢,一个账号只保留一个有效token
手机A登录账号1后,解除设备绑定,手机B登录账号1
手机A上的token失效
工作台
考勤打卡
考勤打卡
打卡界面
tc-P1:考勤打卡界面,信息显示正常
pc: 用户已登录APP
用户进入考勤打卡界面
用户进入考勤打卡界面
进入考勤打卡界面,检查考勤打卡界面顶部用户信息区域
正确显示当前登录用户的名称(与个人中心或账号信息一致)
名称格式正确(无乱码、截断或重叠)
进入考勤打卡界面,查看班组/部门名称是否显示
正确显示用户所属班组或部门名称(如“电工班组”或“技术部”)
进入考勤打卡界面,查看头像是否显示
显示默认头像(如灰色人像图标或系统预设头像)
头像加载无异常(不出现空白、拉伸或模糊)
进入考勤打卡界面,检查考勤打卡界面是否有考勤规则入口(如“考勤规则”按钮)
点击入口查看跳转是否正确
点击入口查看跳转是否正确
显示考勤规则入口(如按钮)
点击后跳转至考勤规则详情页
点击后跳转至考勤规则详情页
tc-P2:考勤规则入口显示(用户有考勤规则)
pc: 用户已登录APP
用户已配置考勤规则(如固定班次等)
用户进入考勤打卡界面
用户已配置考勤规则(如固定班次等)
用户进入考勤打卡界面
进入考勤打卡界面,检查考勤打卡界面是否有考勤规则入口(如“考勤规则”按钮)
点击入口查看跳转是否正确
点击入口查看跳转是否正确
显示考勤规则入口(如按钮)
点击后跳转至考勤规则详情页
点击后跳转至考勤规则详情页
tc-P2:考勤规则入口隐藏(用户无考勤规则)
pc: 用户已登录APP
用户未配置考勤规则
用户进入考勤打卡界面
用户未配置考勤规则
用户进入考勤打卡界面
进入考勤打卡界面,检查考勤打卡界面是否有考勤规则入口
不显示考勤规则入口(无按钮)
tc-P3:用户信息加载异常处理
pc: 用户已登录APP
服务器返回用户信息异常(如网络超时、数据错误)
服务器返回用户信息异常(如网络超时、数据错误)
进入考勤打卡界面,模拟网络请求失败或数据异常
用户名称、班组/部门名称显示为“--”或“加载失败”
默认头像仍正常显示
不出现界面崩溃或卡死
入场打卡
tc-P1:入场打卡界面初始状态显示(满足打卡条件)
pc: 用户已登录APP
用户有考勤规则且允许入场打卡
用户在打卡地点范围内
当前时间在允许入场打卡时段内
用户未进行入场打卡
用户有考勤规则且允许入场打卡
用户在打卡地点范围内
当前时间在允许入场打卡时段内
用户未进行入场打卡
进入入场打卡界面
检查界面显示内容
显示状态:
入场-未打卡
出场-未打卡
显示 入场打卡按钮 + 当前系统时间(如“08:30”)
显示提示:“已进入打卡范围:当前地址”(地址需具体,如“北京市海淀区XX大厦”)
tc-P0:满足打卡条件,入场打卡成功
pc: 用户已登录APP
用户有考勤规则且允许入场打卡
用户在打卡地点范围内
当前时间在允许入场打卡时段内
用户未进行入场打卡
网络正常
用户有考勤规则且允许入场打卡
用户在打卡地点范围内
当前时间在允许入场打卡时段内
用户未进行入场打卡
网络正常
点击“入场打卡”按钮
检查界面变化及后台记录
弹出提示:“入场成功”
界面状态更新:
入场-已打卡(时间记录为点击时刻,如“08:30”)
出场-未打卡
入场打卡按钮变为出场打卡状态或无法打卡
后台准确记录打卡时间、位置及用户ID
界面状态更新:
入场-已打卡(时间记录为点击时刻,如“08:30”)
出场-未打卡
入场打卡按钮变为出场打卡状态或无法打卡
后台准确记录打卡时间、位置及用户ID
tc-P2:入场打卡失败(网络异常)
pc: 用户已登录APP
用户有考勤规则且允许入场打卡
用户在打卡地点范围内
当前时间在允许入场打卡时段内
用户未进行入场打卡
模拟网络断开
用户有考勤规则且允许入场打卡
用户在打卡地点范围内
当前时间在允许入场打卡时段内
用户未进行入场打卡
模拟网络断开
点击“入场打卡”按钮
检查提示及数据记录
检查提示及数据记录
弹出提示:“入场失败,请检查网络”
界面状态保持:
入场-未打卡
出场-未打卡
入场打卡按钮仍可点击
后台无打卡记录
tc-P2:入场打卡失败(超出时间范围)
pc: 用户已登录APP
用户有考勤规则
用户在打卡地点范围内
当前时间 不在 允许入场打卡时段内(如规则为8:00-9:00,当前时间7:59)
用户有考勤规则
用户在打卡地点范围内
当前时间 不在 允许入场打卡时段内(如规则为8:00-9:00,当前时间7:59)
进入入场打卡界面
检查界面显示
显示状态:
入场-未打卡(灰色或禁用状态)
出场-未打卡
入场打卡按钮不可点击,并提示:“未到打卡时间”或“当前时段不允许打卡”
不显示“已进入打卡范围”提示
tc-P2:正常入场打卡失败(不在打卡地点范围)
pc: 用户已登录APP
用户有考勤规则
用户 不在 打卡地点范围内(GPS定位偏差)
当前时间在允许入场打卡时段内
用户有考勤规则
用户 不在 打卡地点范围内(GPS定位偏差)
当前时间在允许入场打卡时段内
进入入场打卡界面
检查界面显示
显示状态:
入场-未打卡
出场-未打卡
显示:外勤入场打卡按钮+当前时间
显示当前实际地址(如“北京市朝阳区XX路”),并标注“不在考勤范围内”
入场-未打卡
出场-未打卡
显示:外勤入场打卡按钮+当前时间
显示当前实际地址(如“北京市朝阳区XX路”),并标注“不在考勤范围内”
tc-P3:重复入场打卡
pc: 用户已登录APP
用户有考勤规则且允许入场打卡
用户在打卡地点范围内
当前时间在允许入场打卡时段内
用户未进行入场打卡
网络正常
用户有考勤规则且允许入场打卡
用户在打卡地点范围内
当前时间在允许入场打卡时段内
用户未进行入场打卡
网络正常
双击入场打卡按钮
提示:“15秒内,请勿重复操作”
后台不记录重复打卡时间
后台不记录重复打卡时间
tc-P1:入场打卡后,打卡时间记录准确,状态切换为出场打卡
pc: 用户已登录APP
用户有考勤规则且允许入场打卡
用户在打卡地点范围内
当前时间在允许入场打卡时段内
用户未进行入场打卡
网络正常
手机系统时间准确
用户有考勤规则且允许入场打卡
用户在打卡地点范围内
当前时间在允许入场打卡时段内
用户未进行入场打卡
网络正常
手机系统时间准确
点击“入场打卡”按钮
显示状态:
入场-已打卡(记录时间)
出场-未打卡
显示 出场打卡按钮 + 当前时间
入场-已打卡(记录时间)
出场-未打卡
显示 出场打卡按钮 + 当前时间
检查后台记录的时间戳
后台记录的打卡时间与用户点击时刻一致(精确到秒)
时间格式符合规范(如“2025-05-20 08:30:15”)
时间格式符合规范(如“2025-05-20 08:30:15”)
tc-P2:定位地址显示准确性
pc:用户在打卡地点范围内
GPS定位已开启
GPS定位已开启
进入入场打卡界面
检查显示的地址是否与实际位置一致
显示地址与实际位置误差≤50米(如“XX大厦南门”而非“XX大厦”)
tc-P2:定位服务关闭,无法打卡
pc:用户在打卡地点范围内
GPS定位服务关闭
GPS定位服务关闭
进入入场打卡界面
检查打卡的地址是否显示
检查打卡的地址是否显示
提示“请开启定位以验证打卡范围”。
tc-P2:考勤打卡时间显示准确性
pc:用户手机时间设置为错误时区(如手动修改为+8小时前)。
进入外勤打卡页面,检查按钮时间显示。
按钮显示时间 与服务端同步(如“提交打卡 09:30”),而非本地错误时间。
后台记录时间戳以服务器时间为准。
后台记录时间戳以服务器时间为准。
出场打卡
tc-P1:出场打卡界面初始状态(满足打卡条件)
pc: 用户有考勤规则
用户在打卡地点范围内
已成功完成入场打卡(入场时间记录为“08:30”)
当前时间在允许出场打卡时段内(如规则配置为17:00-19:00,当前时间17:30)
用户在打卡地点范围内
已成功完成入场打卡(入场时间记录为“08:30”)
当前时间在允许出场打卡时段内(如规则配置为17:00-19:00,当前时间17:30)
进入出场打卡界面
检查界面显示内容
检查界面显示内容
显示状态:
入场-08:30 已打卡
出场-未打卡
显示 出场打卡按钮 + 当前时间(如“17:30”)
显示提示:“已进入打卡范围:当前地址”(如“北京市海淀区XX大厦”)
入场-08:30 已打卡
出场-未打卡
显示 出场打卡按钮 + 当前时间(如“17:30”)
显示提示:“已进入打卡范围:当前地址”(如“北京市海淀区XX大厦”)
tc-P0:出场打卡成功(满足打卡条件)
pc: 用户有考勤规则
用户在打卡地点范围内
已成功完成入场打卡(入场时间记录为“08:30”)
当前时间在允许出场打卡时段内(如规则配置为17:00-19:00,当前时间17:30)
用户在打卡地点范围内
已成功完成入场打卡(入场时间记录为“08:30”)
当前时间在允许出场打卡时段内(如规则配置为17:00-19:00,当前时间17:30)
点击“出场打卡”按钮
检查界面变化及后台记录
检查界面变化及后台记录
弹出提示:“出场成功”
界面状态更新:
入场-08:30 已打卡
出场-17:30 已打卡
出场打卡按钮变为无法打卡状态或出场打卡按钮
后台准确记录出场打卡时间、位置及用户ID
界面状态更新:
入场-08:30 已打卡
出场-17:30 已打卡
出场打卡按钮变为无法打卡状态或出场打卡按钮
后台准确记录出场打卡时间、位置及用户ID
tc-P2:出场打卡失败(网络异常)
pc: 用户有考勤规则
用户在打卡地点范围内
已成功完成入场打卡(入场时间记录为“08:30”)
当前时间在允许出场打卡时段内(如规则配置为17:00-19:00,当前时间17:30)
模拟网络断开
用户在打卡地点范围内
已成功完成入场打卡(入场时间记录为“08:30”)
当前时间在允许出场打卡时段内(如规则配置为17:00-19:00,当前时间17:30)
模拟网络断开
点击“出场打卡”按钮
检查提示及数据记录
弹出提示:“出场失败,请检查网络”
界面状态保持:
入场-08:30 已打卡
出场-未打卡
出场打卡按钮仍可点击
后台无出场打卡记录
tc-P2:定位地址异常(不在打卡地点范围)
pc: 用户已登录APP
用户有考勤规则且已入场打卡
用户 不在 打卡地点范围内(GPS定位偏差)
当前时间在允许出场打卡时段内
用户有考勤规则且已入场打卡
用户 不在 打卡地点范围内(GPS定位偏差)
当前时间在允许出场打卡时段内
进入出场打卡界面
检查界面显示
检查界面显示
显示状态:
入场-08:30 已打卡
出场-未打卡
显示:外勤出场打卡按钮+当前时间
显示当前实际地址(如“北京市朝阳区XX路”),并标注“不在考勤范围内”
入场-08:30 已打卡
出场-未打卡
显示:外勤出场打卡按钮+当前时间
显示当前实际地址(如“北京市朝阳区XX路”),并标注“不在考勤范围内”
tc-P2:多次出场打卡(时间更新)
pc: 用户已成功完成入场打卡
首次出场打卡时间为“17:30”
用户再次尝试出场打卡(当前时间“18:00”)
首次出场打卡时间为“17:30”
用户再次尝试出场打卡(当前时间“18:00”)
点击“出场打卡”按钮
检查界面及后台记录
弹出提示:“出场成功”
界面状态更新:
入场-08:30 已打卡
出场-18:00 已打卡(覆盖之前时间)
后台新增一条出场打卡时间记录
界面状态更新:
入场-08:30 已打卡
出场-18:00 已打卡(覆盖之前时间)
后台新增一条出场打卡时间记录
tc-P2:无法出场打卡(无考勤规则)
pc: 用户 无 考勤规则配置
进入出场打卡界面
检查界面显示
显示状态:
入场-未打卡
出场-未打卡
显示提示:“该用户无考勤规则,无需打卡”
按钮显示为灰色“无法打卡” + 当前时间
按钮不可点击
tc-P2:无法出场打卡(不在允许时间范围)
pc: 用户有考勤规则
当前时间 不在 允许出场打卡时段内(如规则为17:00-19:00,当前时间19:30)
当前时间 不在 允许出场打卡时段内(如规则为17:00-19:00,当前时间19:30)
进入出场打卡界面
检查界面显示
显示状态:
入场-未打卡
出场-未打卡
显示提示:“用户当前不在打卡时间范围内,无需打卡”
按钮显示为灰色“无法打卡” + 当前时间(如“19:30”)
按钮不可点击
入场-未打卡
出场-未打卡
显示提示:“用户当前不在打卡时间范围内,无需打卡”
按钮显示为灰色“无法打卡” + 当前时间(如“19:30”)
按钮不可点击
tc-P2:无法出场打卡(未完成入场打卡)
pc: 用户有考勤规则
用户 未 完成入场打卡
当前时间在允许出场打卡时段内
用户 未 完成入场打卡
当前时间在允许出场打卡时段内
显示“入场打卡”按钮,点击“入场打卡”按钮
检查界面变化及后台记录
检查界面变化及后台记录
弹出提示:“入场成功”
界面状态更新:
入场-18:30 已打卡
出场-未打卡
打卡按钮变为出场打卡按钮
后台准确记录入场打卡时间、位置及用户ID
界面状态更新:
入场-18:30 已打卡
出场-未打卡
打卡按钮变为出场打卡按钮
后台准确记录入场打卡时间、位置及用户ID
tc-P3:多次出场打卡(时间限制)
pc: 用户已成功完成入场打卡
首次出场打卡时间为“18:00”
用户15S内再次尝试出场打卡
首次出场打卡时间为“18:00”
用户15S内再次尝试出场打卡
点击“出场打卡”按钮
检查界面及后台记录
弹出提示“15S内不能再次打卡哦”
界面状态更新:
入场-08:30 已打卡
出场-18:00 已打卡
后台不更新出场打卡时间为最新点击时间
界面状态更新:
入场-08:30 已打卡
出场-18:00 已打卡
后台不更新出场打卡时间为最新点击时间
外勤入场打卡
tc-P1:外勤入场打卡界面初始状态(满足打卡条件)
pc: 用户有考勤规则
用户 不在 打卡地点范围内(如GPS定位距离考勤点>500米)
当前时间在允许入场打卡时段内(规则配置为8:00-10:00)
用户 不在 打卡地点范围内(如GPS定位距离考勤点>500米)
当前时间在允许入场打卡时段内(规则配置为8:00-10:00)
进入考勤打卡界面
检查界面显示内容
检查界面显示内容
显示状态:
入场-未打卡
出场-未打卡
显示 外勤入场打卡按钮 + 当前时间(如“09:00”)
显示提示:“当前定位:北京市朝阳区XX路”(实际定位地址)
不显示“已进入打卡范围”提示
tc-P0:外勤入场打卡成功(满足打卡条件)
pc: 用户有考勤规则
用户 不在 打卡地点范围内(如GPS定位距离考勤点>500米)
当前时间在允许入场打卡时段内(规则配置为8:00-10:00)
用户 不在 打卡地点范围内(如GPS定位距离考勤点>500米)
当前时间在允许入场打卡时段内(规则配置为8:00-10:00)
点击“外勤入场打卡”按钮
检查弹窗内容
弹出外勤打卡页面,包含以下元素:
标题:“外勤打卡”
地图定位:当前实际地址(如“朝阳区XX路”)
我的位置:北京市朝阳区XX路”(实际定位地址)
拍照(必填):显示相机
备注(必填)输入框:可填写外勤原因
按钮:“当前时间+外勤打卡”按钮
取消按钮:有“<”返回按钮
标题:“外勤打卡”
地图定位:当前实际地址(如“朝阳区XX路”)
我的位置:北京市朝阳区XX路”(实际定位地址)
拍照(必填):显示相机
备注(必填)输入框:可填写外勤原因
按钮:“当前时间+外勤打卡”按钮
取消按钮:有“<”返回按钮
点击“外勤打卡”按钮(拍照、填写备注)
检查界面变化及后台记录
检查界面变化及后台记录
弹窗关闭,主界面更新状态:
入场-09:00 已打卡(外勤)(标注外勤类型)
出场-未打卡
弹出提示:“外勤入场打卡成功”
后台记录:
定位地址(与页面显示一致)。
拍照图片(不可篡改)。
备注内容。
打卡时间(精确到秒)。
入场-09:00 已打卡(外勤)(标注外勤类型)
出场-未打卡
弹出提示:“外勤入场打卡成功”
后台记录:
定位地址(与页面显示一致)。
拍照图片(不可篡改)。
备注内容。
打卡时间(精确到秒)。
tc-P2:提交外勤入场打卡失败(网络异常)
pc: 用户有考勤规则
用户 不在 打卡地点范围内(如GPS定位距离考勤点>500米)
当前时间在允许入场打卡时段内(规则配置为8:00-10:00)
用户已打开外勤打卡弹窗
模拟网络断开
用户 不在 打卡地点范围内(如GPS定位距离考勤点>500米)
当前时间在允许入场打卡时段内(规则配置为8:00-10:00)
用户已打开外勤打卡弹窗
模拟网络断开
点击“外勤打卡”按钮
检查提示及数据记录
检查提示及数据记录
弹出提示:“提交失败,请检查网络后重试”
弹窗保持打开状态
后台无打卡记录
主界面状态保持:
入场-未打卡
出场-未打卡
tc-P2:外勤打卡弹窗,取消外勤打卡
pc: 用户已打开外勤打卡弹窗
点击“<”返回按钮
检查界面状态
检查界面状态
弹窗关闭,无任何数据提交
主界面状态保持:
入场-未打卡
出场-未打卡
tc-P1:外勤打卡弹窗,拍照功能验证(仅允许实时拍摄)
pc: 用户已打开外勤打卡弹窗
点击拍照按钮。
尝试选择本地相册图片。
调用手机摄像头,仅允许拍照,无“从相册选择”选项。
拍摄后,照片显示在页面中(可预览)。
拍摄后,照片显示在页面中(可预览)。
点击拍照按钮。只拍1张照片
后台查看有存储1张
点击拍照按钮。只拍3张照片
后台查看有存储3张
tc-P1:外勤打卡弹窗,备注输入校验(必填 限制1000字以内)
pc: 用户已打开外勤打卡弹窗
在备注输入框中:
输入1001个字符(超出限制)。
输入1000个字符(允许)。
输入空内容。
输入1001字符时,自动截断至1000字符,或提示“超出字数限制”。
输入1000字符时,可正常提交。
输入空内容时,提示“备注不能为空”。
tc-P2:外勤打卡弹窗,外勤打卡按钮状态控制
pc: 用户已打开外勤打卡弹窗
不拍照、不填写备注,检查按钮状态。
未拍照+未填写备注 → 按钮灰色,不可点击。
仅拍照,不填写备注,检查按钮状态。
仅拍照 → 按钮灰色,提示“请填写备注”。
填写备注,不拍照,检查按钮状态。
仅填写备注 → 按钮灰色,提示“请拍照”。
完成拍照+备注,检查按钮状态。
拍照+备注填写完整 → 按钮高亮可点击,显示“提交打卡 09:30”。
tc-P2:外勤打卡定位失败时的处理(GPS信号弱/关闭定位权限)
pc: 用户GPS信号弱/关闭定位权限。
进入外勤打卡页面。
显示“定位失败,请检查GPS”
tc-P2:外勤打卡拍照失败后的处理(摄像头故障/关闭权限)
pc: 用户尝试拍照但摄像头故障/关闭权限
点击拍照按钮
提示:“无法启动摄像头,请检查权限或设备”。
tc-P2:重复提交外勤打卡
pc: 用户已拍照并填写备注(字数≤1000)。
网络正常。
网络正常。
快速多次点击外勤打卡按钮。
仅第一次提交有效,后续点击无效(防重复提交)。
后台不生成重复记录。
tc-P2:考勤打卡时间显示准确性
pc:用户手机时间设置为错误时区(如手动修改为+8小时前)。
进入外勤打卡页面,检查按钮时间显示。
按钮显示时间 与服务端同步(如“提交打卡 09:30”),而非本地错误时间。
后台记录时间戳以服务器时间为准。
后台记录时间戳以服务器时间为准。
外勤出场打卡
tc-P1:外勤出场打卡界面初始状态(满足打卡条件)
pc: 用户有考勤规则,且已入场打卡(入场时间记录为“08:30”)。
用户不在考勤地点范围内。
当前时间在允许出场时段内(如17:30)。
用户不在考勤地点范围内。
当前时间在允许出场时段内(如17:30)。
进入考勤打卡界面
检查界面显示内容
检查界面显示内容
显示状态:
入场-08:30 已打卡
出场-未打卡
显示 外勤出场打卡按钮 + 当前时间(如“17:30”)。
显示 当前定位地址(如“北京市海淀区XX大厦”)。
入场-08:30 已打卡
出场-未打卡
显示 外勤出场打卡按钮 + 当前时间(如“17:30”)。
显示 当前定位地址(如“北京市海淀区XX大厦”)。
tc-P0:外勤出场打卡成功(满足打卡条件)
pc: 用户有考勤规则,且已入场打卡(入场时间记录为“08:30”)。
用户不在考勤地点范围内。
当前时间在允许出场时段内(如17:30)。
用户不在考勤地点范围内。
当前时间在允许出场时段内(如17:30)。
点击“外勤出场打卡”按钮
检查弹窗内容
检查弹窗内容
弹出外勤打卡页面,包含以下元素:
标题:“外勤打卡”
地图定位:当前实际地址(如“朝阳区XX路”)
我的位置:北京市朝阳区XX路”(实际定位地址)
拍照(必填):显示相机
备注(必填)输入框:可填写外勤原因
按钮:“当前时间+外勤打卡”按钮
取消按钮:有“<”返回按钮
标题:“外勤打卡”
地图定位:当前实际地址(如“朝阳区XX路”)
我的位置:北京市朝阳区XX路”(实际定位地址)
拍照(必填):显示相机
备注(必填)输入框:可填写外勤原因
按钮:“当前时间+外勤打卡”按钮
取消按钮:有“<”返回按钮
点击“外勤打卡”按钮(拍照、填写备注)
检查界面变化及后台记录
检查界面变化及后台记录
弹窗关闭,主界面更新状态:
入场-08:30 已打卡
出场-17:30 已打卡(外勤)
弹出提示:“外勤出场打卡成功”
后台记录:
打卡类型为“外勤出场”。
拍照图片、备注、定位地址、时间戳均准确存储
入场-08:30 已打卡
出场-17:30 已打卡(外勤)
弹出提示:“外勤出场打卡成功”
后台记录:
打卡类型为“外勤出场”。
拍照图片、备注、定位地址、时间戳均准确存储
tc-P2:提交外勤出场打卡失败(网络异常)
pc: 用户有考勤规则
用户 不在 打卡地点范围内(如GPS定位距离考勤点>500米)
当前时间在允许出场时段内(如17:30)
用户已打开外勤打卡弹窗
模拟网络断开
用户 不在 打卡地点范围内(如GPS定位距离考勤点>500米)
当前时间在允许出场时段内(如17:30)
用户已打开外勤打卡弹窗
模拟网络断开
点击“外勤打卡”按钮
检查提示及数据记录
检查提示及数据记录
弹出提示:“打卡失败,请检查网络后重试”。
弹窗保持打开,已填内容保留。
后台无打卡记录。
tc-P1:外勤打卡弹窗,必填项校验(未拍照/未填备注)
pc: 用户有考勤规则
用户 不在 打卡地点范围内(如GPS定位距离考勤点>500米)
当前时间在允许出场时段内(如17:30)
用户已打开外勤打卡弹窗
用户 不在 打卡地点范围内(如GPS定位距离考勤点>500米)
当前时间在允许出场时段内(如17:30)
用户已打开外勤打卡弹窗
不拍照,仅填写备注 → 尝试提交。
拍照,不填写备注 → 尝试提交。
不拍照且不填备注 → 尝试提交。
提交按钮始终灰色不可点击,对应提示:
未拍照:“请拍摄现场照片”。
未填备注:“请输入出场事由”。
tc-P2:多次外勤出场打卡(时间更新)
pc: 用户已提交一次外勤出场打卡(时间17:30)。
当前时间更新至18:00。
当前时间更新至18:00。
再次点击“外勤出场打卡”并提交。
主界面状态更新为 出场-18:00 已打卡(外勤)(覆盖前次时间)。
后台新增一条打卡记录。
后台新增一条打卡记录。
tc-P2:外勤打卡定位失败时的处理(GPS信号弱/关闭定位权限)
pc: 用户GPS信号弱/关闭定位权限。
进入外勤打卡页面。
显示“定位失败,请检查GPS”
tc-P2:外勤打卡拍照失败后的处理(摄像头故障/关闭权限)
pc: 用户尝试拍照但摄像头故障/关闭权限
点击拍照按钮
提示:“无法启动摄像头,请检查权限或设备”。
tc-P2:考勤打卡时间防篡改验证
pc:用户手动修改手机系统时间。
进入外勤打卡页面,检查按钮时间显示。
按钮显示时间 与服务端同步(如“提交打卡 09:30”),而非本地错误时间。
后台记录时间戳以服务器时间为准。
后台记录时间戳以服务器时间为准。
tc-P2:未入场打卡时禁止外勤出场
pc: 用户有考勤规则(9:00-18:00)前后1小时都能打卡
用户未进行入场打卡/外勤入场打卡
当前时间在允许出场打卡时段内
用户未进行入场打卡/外勤入场打卡
当前时间在允许出场打卡时段内
尝试进入外勤出场打卡流程
无法直接打出场卡
当前时间18:30,进入考勤打卡界面
显示“入场打卡”按钮,
点击“入场打卡”按钮,检查界面变化及后台记录
弹出提示:“入场成功”
界面状态更新:
入场-18:30 已打卡
出场-未打卡
打卡按钮变为出场打卡按钮
后台准确记录入场打卡时间、位置及用户ID
界面状态更新:
入场-18:30 已打卡
出场-未打卡
打卡按钮变为出场打卡按钮
后台准确记录入场打卡时间、位置及用户ID
终止定位/开启定位
tc-P1:入场打卡/外勤入场打卡(满足打卡条件),默认开启定位
pc: 用户已完成入场打卡或外勤入场打卡。
用户完成入场打卡
上报一次轨迹数据,后台有新增一条记录
后续间隔3分钟,上报一次轨迹数据,后台又新增一条记录
后续间隔3分钟,上报一次轨迹数据,后台又新增一条记录
用户完成外勤入场打卡
上报一次轨迹数据,后台有新增一条记录
后续间隔3分钟,上报一次轨迹数据,后台又新增一条记录
后续间隔3分钟,上报一次轨迹数据,后台又新增一条记录
tc-P1:出场打卡/外勤出场打卡(满足打卡条件),默认终止定位状态(出场后不进行轨迹上报)
pc: 用户已完成出场打卡或外勤出场打卡。
用户完成出场打卡
上报最后一次轨迹数据,后台有新增一条记录
终止定位,后续间隔30秒,不上报轨迹数据,后台无记录
终止定位,后续间隔30秒,不上报轨迹数据,后台无记录
用户完成外勤出场打卡
上报最后一次轨迹数据,后台有新增一条记录
终止定位,后续间隔30秒,不上报轨迹数据,后台无记录
终止定位,后续间隔30秒,不上报轨迹数据,后台无记录
进入考勤打卡界面
显示 “开启定位”按钮(默认状态)。
tc-P2:出场打卡成功后,点击开启定位-恢复轨迹上报
pc: 用户已完成出场打卡或外勤出场打卡。
用户处于默认状态(未开启定位)。
用户处于默认状态(未开启定位)。
点击“开启定位”按钮。
检查界面及后台行为。
按钮变为 “终止定位”。
弹出提示:“轨迹上报已开启”。
后台 开始记录用户GPS轨迹(验证位置更新频率是否符合规则,如每3分钟一次)。
弹出提示:“轨迹上报已开启”。
后台 开始记录用户GPS轨迹(验证位置更新频率是否符合规则,如每3分钟一次)。
tc-P2:出场打卡成功后,点击终止定位-停止轨迹上报
pc: 用户已完成出场打卡或外勤出场打卡,
用户已开启定位(正在上报轨迹)。
用户已开启定位(正在上报轨迹)。
点击“终止定位”按钮。
检查界面及后台行为。
按钮恢复为 “开启定位”。
弹出提示:“轨迹上报已终止”。
后台 停止记录用户GPS轨迹(最后一条记录时间与点击终止时间一致)。
tc-P2:出场打卡成功后,点击开启定位-定位权限被拒绝时的处理(如关闭GPS)
pc: 用户已完成出场打卡或外勤出场打卡。
用户尝试开启定位,但手机GPS权限未开启。
用户尝试开启定位,但手机GPS权限未开启。
点击“开启定位”按钮。
拒绝系统弹出的GPS权限请求。
弹出提示:“请开启GPS权限以记录轨迹”。
按钮仍显示“开启定位”,不切换为“终止定位”。
后台无轨迹记录。
tc-P2:出场打卡成功后,多次切换开启/终止定位
pc: 用户已完成出场打卡或外勤出场打卡。
依次操作:
开启定位 → 终止定位 → 再次开启定位 → 再次终止定位。
检查后台轨迹记录时间戳。
按钮状态实时切换(开启 ↔ 终止)。
后台轨迹记录:
仅在开启期间有数据,终止期间无数据。
时间戳连贯,无重复或丢失。
tc-P2:未完成出场打卡时隐藏终止/开启定位功能
pc: 用户 未完成 出场打卡或外勤出场打卡。
检查考勤界面是否显示定位控制按钮。
不显示“开启定位”或“终止定位”按钮(功能未激活)。
tc-P1:打卡定位精度验证
pc: 用户开启定位(GPS定位)
在不同环境下(如室内、地下车库)检查轨迹精度
室外GPS定位:误差≤50米。
室内Wi-Fi/基站定位:误差≤200米,并标注“低精度”。
考勤规则
tc-P2:考勤规则信息进出场时间显示
pc: 用户已登录,且有考勤规则配置(如:上班时间 09:00,下班时间 18:00,午休 12:00-13:30)。
进入 考勤规则页面。
检查 进出场时间 显示是否正确。
时间数据与后台配置完全一致。
显示格式:每月1号至月底,入场出场时间:08:30-18:30
中午休息时间:12:00-13:30
显示格式:每月1号至月底,入场出场时间:08:30-18:30
中午休息时间:12:00-13:30
tc-P2:考勤规则信息弹性规则显示
pc: 后台配置了弹性规则(如:允许迟到 10 分钟,允许早退 15 分钟)
进入考勤规则页面。
检查 弹性规则 是否显示。
时间数据与后台配置完全一致。
显示格式:允许迟到 10 分钟,允许早退 15 分钟
显示格式:允许迟到 10 分钟,允许早退 15 分钟
tc-P2:考勤规则信息考勤范围显示
pc: 后台配置了考勤范围(如:办公地点 “北京市海淀区XX大厦”,半径 500米)
进入考勤规则页面。
检查 考勤范围 是否显示。
检查 考勤范围 是否显示。
办公地点 “北京市海淀区XX大厦”
tc-P2:点击办公地点名称跳转地图
pc: 考勤规则页面已加载,且考勤地点已配置
点击 办公地点名称(如“北京市海淀区XX大厦”)。
检查是否跳转至地图页面。
跳转至 地图页面,并显示 考勤地点标记(如蓝色图钉)。
地图默认缩放级别应能清晰显示考勤范围(如500米半径)。
地图默认缩放级别应能清晰显示考勤范围(如500米半径)。
考勤统计
tc-P2:进入考勤统计默认显示当天考勤数据
pc: 用户已登录,且当天有考勤记录(如已入场但未出场)
进入 考勤统计页面。
检查默认显示是否为 当天数据。
默认选中 当天日期,并显示对应考勤数据。
日历 自动展开,不可手动收起。
tc-P1:进入考勤统计,切换月份/日期
pc: 用户有历史考勤数据(如前一天已打卡)
点击日历月份,可选择 上一个月/下一个月,进行切换
月份切换后,日历更新,并显示 所选月份 的考勤数据。
点击历史某一天(如昨天),检查数据是否刷新
点击某一天后,下方 本日打卡数据 同步更新。
点击未来某一天(如明天),检查数据是否刷新
点击某一天后,下方 本日打卡数据 同步更新。
tc-P2:进入考勤统计日期颜色标记
pc: 用户当月有 已打卡 和 缺卡 记录。
检查日历中日期的颜色标记。
蓝色:当天入场工作时长 > 0(如正常打卡并出场)。
红色:当天入场工作时长 = 0(如未打卡或未出场)。
tc-P1:进入考勤统计-本日打卡统计正常打卡的工作时长
pc: 用户当天考勤记录:
入场时间:09:00
出场时间:18:00
后台配置午休时间:12:00-13:30(1.5小时)。
入场时间:09:00
出场时间:18:00
后台配置午休时间:12:00-13:30(1.5小时)。
进入考勤统计页面,查看 本日打卡-入场工作时长
工作时长 = (18:00 - 09:00 - 1.5小时) = 7.5小时。
显示格式:7.5(精确到小数点后1位)。
查看其他有正常打卡入场时间、出场时间的日期
工作时长 =(出场时间 - 入场时间 - 休息时间),精确到小数点后1位
tc-P3:【异常场景】进入考勤统计-本日打卡统计异常打卡的工作时长(如:早退)
pc: 用户当天考勤记录:
入场时间:09:00
出场时间:12:00
后台配置午休时间:12:00-13:30(1.5小时)。
入场时间:09:00
出场时间:12:00
后台配置午休时间:12:00-13:30(1.5小时)。
进入考勤统计页面,查看 本日打卡-入场工作时长
工作时长 = (12:00 - 09:00 ) = 3.0小时。
显示格式:3.0(精确到小数点后1位)。
显示格式:3.0(精确到小数点后1位)。
tc-P3:【异常场景】进入考勤统计-本日打卡统计异常打卡的工作时长(如:迟到)
pc: 用户当天考勤记录:
入场时间:13:00
出场时间:18:00
后台配置午休时间:12:00-13:30(1.5小时)。
入场时间:13:00
出场时间:18:00
后台配置午休时间:12:00-13:30(1.5小时)。
进入考勤统计页面,查看 本日打卡-入场工作时长
工作时长 = (13:00 - 09:00-0.5小时 ) = 4.5小时。
显示格式:4.5(精确到小数点后1位)。
显示格式:4.5(精确到小数点后1位)。
tc-P3:【异常场景】进入考勤统计-本日打卡统计异常打卡的工作时长(如:旷工)
pc: 用户当天 未打卡
进入考勤统计页面,查看 本日打卡-入场工作时长
显示 0,且日期标记为 红色
tc-P3:【异常场景】进入考勤统计-本日打卡统计异常打卡的工作时长(如:未出场)
pc: 用户当天 仅打卡入场但未出场。
进入考勤统计页面,查看 本日打卡-入场工作时长
显示 0,且日期标记为 红色
tc-P3:进入考勤统计-本日打卡统计跨天打卡的工作时长(如:晚班考勤)
用户考勤记录:
入场时间:22:00(前一天)
出场时间:06:00(第二天)
休息时间:02:00-03:00(1小时)
入场时间:22:00(前一天)
出场时间:06:00(第二天)
休息时间:02:00-03:00(1小时)
检查 本日打卡-入场工作时长(按出场日期计算)
工作时长 = (06:00 - 22:00 - 1小时) = 7.0小时(支持跨天计算)
tc-P1:进入考勤统计-本月打卡统计-累计当月工作时长
pc: 当前为6月15日,用户已打卡并出场的日期:
3月1日:工作时长 8.0小时
3月2日:工作时长 7.5小时
...(其他日期未出场或未打卡)
3月1日:工作时长 8.0小时
3月2日:工作时长 7.5小时
...(其他日期未出场或未打卡)
进入考勤统计页面,查看 本月打卡-入场工作时长。
累计时长 = 8.0 + 7.5 + ... = 已出场天数的总和。
显示格式:XX.X小时
显示格式:XX.X小时
tc-P2:进入考勤统计-本月打卡统计-缺卡天数计算(基于下班时间判定)
pc: 当前为6月15日,用户缺卡记录:
3月5日:上午打卡但下午未打卡
3月10日:全天未打卡
3月5日:上午打卡但下午未打卡
3月10日:全天未打卡
进入考勤统计页面,检查 本月打卡-缺卡工作天数。
缺卡天数 = 2天(即使3月5日有部分打卡,仍算缺卡)。
tc-P2:进入考勤统计-本月打卡统计-缺卡天数计算(基于下班时间判定)当天已过下班时间未打卡 → 计缺卡
pc: 考勤规则配置:
下班时间:18:00
下班缓冲时间:30分钟(最晚允许打卡时间18:30)。
当前时间:19:00(已过最晚打卡时间)。
用户当天 未打下班卡。
下班时间:18:00
下班缓冲时间:30分钟(最晚允许打卡时间18:30)。
当前时间:19:00(已过最晚打卡时间)。
用户当天 未打下班卡。
进入考勤统计页面,检查 本月缺卡天数。
缺卡天数 +1(因已过最晚打卡时间未打卡)。
日历中当天标记为 红色。
tc-P2:进入考勤统计-本月打卡统计-缺卡天数计算(基于下班时间判定)未到下班时间未打卡 → 不计缺卡
pc: 考勤规则配置:
下班时间:18:00
下班缓冲时间:30分钟。
当前时间:17:00(未到下班时间)。
用户当天 未打下班卡。
下班时间:18:00
下班缓冲时间:30分钟。
当前时间:17:00(未到下班时间)。
用户当天 未打下班卡。
进入考勤统计页面,检查 本月缺卡天数。
缺卡天数 不增加(因未到下班时间,仍有打卡机会)。
日历中当天标记保持 蓝色(如果已入场)
日历中当天标记保持 蓝色(如果已入场)
tc-P2:进入考勤统计-本月打卡统计-缺卡天数计算(基于下班时间判定)下班缓冲时间内未打卡 → 不计缺卡
pc: 考勤规则配置:
下班时间:18:00
下班缓冲时间:30分钟(最晚打卡时间18:30)。
当前时间:18:15(在缓冲时间内)。
用户当天 未打下班卡。
下班时间:18:00
下班缓冲时间:30分钟(最晚打卡时间18:30)。
当前时间:18:15(在缓冲时间内)。
用户当天 未打下班卡。
进入考勤统计页面,检查 本月缺卡天数。
缺卡天数 不增加(因未到最后打卡时间,仍有打卡机会)。
日历中当天标记保持 蓝色(如果已入场)
日历中当天标记保持 蓝色(如果已入场)
tc-P2:进入考勤统计-本月打卡统计-缺卡天数计算(基于下班时间判定)跨天未打卡的特殊处理
pc: 用户为夜班,考勤规则:
下班时间:次日06:00
缓冲时间:30分钟(最晚打卡时间06:30)。
当前时间:次日07:00(已过最晚打卡时间)。
用户 未打下班卡。
下班时间:次日06:00
缓冲时间:30分钟(最晚打卡时间06:30)。
当前时间:次日07:00(已过最晚打卡时间)。
用户 未打下班卡。
检查前一天的缺卡状态。
缺卡天数 +1(按日历日期计算,如6月5日夜班未打卡,则6月5日计缺卡)
tc-P3:进入考勤统计-本月打卡统计-缺卡天数计算(基于下班时间判定)配置无缓冲时间时的严格判定
pc: 考勤规则配置:
下班时间:18:00
缓冲时间:0分钟(严格按18:00判定)。
当前时间:18:01(已过下班时间)。
用户未打下班卡。
下班时间:18:00
缓冲时间:0分钟(严格按18:00判定)。
当前时间:18:01(已过下班时间)。
用户未打下班卡。
检查缺卡天数
缺卡天数 +1(因无缓冲时间,超时即计缺卡)
tc-P3:【异常场景】进入考勤统计-当月无考勤数据时的显示
pc: 用户当月 无任何考勤记录
进入考勤统计页面
本月打卡 显示:
入场工作时长:0小时
缺卡工作天数:当月全部天数(如3月显示31天)。
日历所有日期标记为 红色。
入场工作时长:0小时
缺卡工作天数:当月全部天数(如3月显示31天)。
日历所有日期标记为 红色。
tc-P3:【兼容性】进入考勤统计-不同月份天数适配显示
pc: 28天(如2025年2月)
31天(如2025年3月)
31天(如2025年3月)
切换至不同月份,检查日历显示天数
日历正确显示 28/30/31天
tc-P3:【异常场景】考勤统计-用户更换了考勤组,在不同日期查看考勤规则,显示最新的考勤规则
tc-P3:【异常场景】考勤统计-用户更换了班组
pc:用户在班组1有考勤记录
用户退场后,入场班组2
有考勤打卡记录
有考勤打卡记录
查看考勤统计,会显示之前在班组1的考勤数据
tc-P3:【异常场景】考勤记录详情-用户更换了项目
不能查看
考勤记录
记录详情
tc-P2:进入考勤记录-默认显示当天考勤数据
pc: 用户已登录,且当天有考勤记录(如已入场但未出场)
进入 考勤记录页面。
检查默认显示是否为 当天数据。
检查默认显示是否为 当天数据。
默认选中 当天日期,并显示对应考勤数据。
日历默认收起,可手动展开。
日历默认收起,可手动展开。
tc-P1:进入考勤记录,切换月份/日期
pc: 用户有历史考勤数据(如前一天已打卡)
点击日历月份,可选择 上一个月/下一个月,进行切换
月份切换后,日历更新,并显示 所选月份 的考勤数据。
点击历史某一天(如昨天),检查数据是否刷新
点击某一天后,下方 本日打卡数据 同步更新。
点击未来某一天(如明天),检查数据是否刷新
点击某一天后,下方 本日打卡数据 同步更新。
tc-P1:考勤记录详情-顶部用户信息显示
pc: 用户已登录
进入考勤记录页面
显示:用户姓名 + 班组/部门名称 + 默认头像
tc-P1:考勤记录详情-日历颜色标记逻辑
pc: 6月1日:正常入场+出场(蓝色)
6月2日:地点异常打卡(黄色)
6月3日:未打下班卡(红色)
6月2日:地点异常打卡(黄色)
6月3日:未打下班卡(红色)
展开日历
检查日期颜色
颜色标记符合优先级规则(红 > 黄 > 蓝)
6月1日显示蓝色
6月2日显示黄色
6月3日显示红色
6月1日显示蓝色
6月2日显示黄色
6月3日显示红色
tc-P2:考勤记录详情-日历颜色标记-当天逻辑
当天未打出场卡/或者未打入场卡
显示红色
当天有打出场卡但地点异常打卡
显示黄色
当天打卡无地点异常,入场、出场都打了
显示蓝色
tc-P0:考勤记录详情-正常打卡显示
pc:考勤规则:
上班时间:08:00(迟到缓冲10分钟)
下班时间:17:00(早退缓冲10分钟)
午休时间:12:00-13:30
用户6月1日打卡记录:
入场:08:00(正常范围)
出场:17:00(正常范围)
上班时间:08:00(迟到缓冲10分钟)
下班时间:17:00(早退缓冲10分钟)
午休时间:12:00-13:30
用户6月1日打卡记录:
入场:08:00(正常范围)
出场:17:00(正常范围)
选择6月1日
早班
打卡时间段:(08:00-17:00)
出勤统计:打卡2次,时长7.5小时
入场:08:00
[正常设置的定位点]
出场:17:00
[正常设置的定位点]
打卡时间段:(08:00-17:00)
出勤统计:打卡2次,时长7.5小时
入场:08:00
[正常设置的定位点]
出场:17:00
[正常设置的定位点]
tc-P1:考勤记录详情-地点异常打卡-地点异常标识
pc: 考勤规则:
上班时间:08:00(迟到缓冲10分钟)
下班时间:17:00(早退缓冲10分钟)
午休时间:12:00-13:30
用户6月2日打卡记录:
入场:08:10(非考勤范围)
附带打卡照片
上班时间:08:00(迟到缓冲10分钟)
下班时间:17:00(早退缓冲10分钟)
午休时间:12:00-13:30
用户6月2日打卡记录:
入场:08:10(非考勤范围)
附带打卡照片
选择6月2日
早班
打卡时间段:(08:00-17:00)
出勤统计:打卡1次,时长0小时
入场:08:10
[异常的定位点]
[照片]
[备注内容]
出场:未打卡
打卡时间段:(08:00-17:00)
出勤统计:打卡1次,时长0小时
入场:08:10
[异常的定位点]
[照片]
[备注内容]
出场:未打卡
tc-P1:考勤记录详情-迟到/早退标识
pc: 考勤规则:
上班时间:08:00(迟到缓冲10分钟)
下班时间:17:00(早退缓冲10分钟)
午休时间:12:00-13:30
用户6月4日打卡记录:
入场:08:15(迟到)
出场:16:45(早退)
上班时间:08:00(迟到缓冲10分钟)
下班时间:17:00(早退缓冲10分钟)
午休时间:12:00-13:30
用户6月4日打卡记录:
入场:08:15(迟到)
出场:16:45(早退)
选择6月4日
早班
打卡时间段:(08:00-17:00)
出勤统计:打卡2次,时长7.5小时
入场:08:15(迟到标识)
出场:16:50(早退标识)
打卡时间段:(08:00-17:00)
出勤统计:打卡2次,时长7.5小时
入场:08:15(迟到标识)
出场:16:50(早退标识)
tc-P3:【异常场景】考勤记录详情-跨天考勤-正常打卡(22:00-6:00)的计算逻辑(如:晚班考勤)
用户考勤记录:
入场时间:6月1日22:00(前一天)
出场时间:6月2日06:00(第二天)
夜班考勤组:
工作时间:22:00-次日06:00
休息时间:02:00-03:00(1小时)
入场时间:6月1日22:00(前一天)
出场时间:6月2日06:00(第二天)
夜班考勤组:
工作时间:22:00-次日06:00
休息时间:02:00-03:00(1小时)
选择6月1日
显示工作时长:7.0小时
日历中6月1日标记蓝色
夜班考勤组
打卡时间段:(22:00-次日06:00)
出勤统计:打卡2次,时长7.0小时
入场:22:00
出场:06:00
日历中6月1日标记蓝色
夜班考勤组
打卡时间段:(22:00-次日06:00)
出勤统计:打卡2次,时长7.0小时
入场:22:00
出场:06:00
tc-P3:【异常场景】考勤记录详情-跨天考勤-异常打卡(0:30-06:00)的计算逻辑(如:晚班考勤)
用户考勤记录:
入场时间:6月1日0:30(第二天)
出场时间:6月2日06:00(第二天)
夜班考勤组:
工作时间:22:00-次日06:00
休息时间:02:00-03:00(1小时)
入场时间:6月1日0:30(第二天)
出场时间:6月2日06:00(第二天)
夜班考勤组:
工作时间:22:00-次日06:00
休息时间:02:00-03:00(1小时)
选择6月1日
显示工作时长:4.5小时
日历中6月1日标记蓝色
夜班考勤组
打卡时间段:(22:00-次日06:00)
出勤统计:打卡2次,时长4.5小时
入场:0:30
出场:06:00
日历中6月1日标记蓝色
夜班考勤组
打卡时间段:(22:00-次日06:00)
出勤统计:打卡2次,时长4.5小时
入场:0:30
出场:06:00
tc-P3:【异常场景】考勤记录详情-用户更换了班组,考勤记录都可查看
pc:用户在班组1有考勤记录
用户退场后,入场班组2
有考勤打卡记录
有考勤打卡记录
查看考勤记录,会显示之前在班组1的考勤记录
tc-P3:【异常场景】考勤记录详情-用户更换了考勤组,考勤记录都可查看
tc-P3:【异常场景】考勤记录详情-用户更换了项目,只能查看最新项目组的考勤数据
人员选择
tc-P1:管理人员权限-查看考勤记录详情
pc: 当前用户为管理人员
检查页面是否显示"选择人员"按钮
显示人员选择功能
可查看所有班组/部门人员
选择其中一个管理人员
可以他的查看考勤记录
选择其中一个建筑工人
可以他的查看考勤记录
tc-P1:建筑工人权限-查看考勤记录详情
pc: 当前用户为建筑工人
检查页面是否显示"选择人员"按钮
隐藏人员选择功能
仅显示本人考勤记录
仅显示本人考勤记录
tc-P1:管理人员权限-可树形筛选人员
pc: 当前用户为管理人员
项目A
钢筋班组
张三(138****1234)
李四(159****5678)
木工班组
王五(188****9999)
项目A
钢筋班组
张三(138****1234)
李四(159****5678)
木工班组
王五(188****9999)
展开项目A → 钢筋班组,选择张三
正确显示张三的考勤记录,默认显示当月当天的数据
手机号脱敏显示
手机号脱敏显示
tc-P1:管理人员权限-可搜索人员
pc: 当前用户为管理人员
项目A
钢筋班组
张三(138****1234)
李四(159****5678)
木工班组
王五(188****9999)
项目A
钢筋班组
张三(138****1234)
李四(159****5678)
木工班组
王五(188****9999)
在搜索框输入"李四"
能搜索到对应人员
输入手机号后4位"5678"
能搜索到对应人员、手机号显示为"159****5678"
移动轨迹
当日轨迹
tc-P0:查看当天完整轨迹数据
pc:用户已登录APP
用户当天有完整的移动轨迹记录
用户当天有完整的移动轨迹记录
用户进入移动轨迹模块
查看默认显示的当天轨迹
查看默认显示的当天轨迹
顶部显示:用户名、当日日期、轨迹状态(轨迹正常)、公里数(如:约5.3公里)和停留时间(如:停留2.5小时)
地图显示:地图上显示连续轨迹路线,入场打卡、出场打卡、和停留点;
按钮显示:放大、缩小;前一天、后一天;列表,历史。
地图显示:地图上显示连续轨迹路线,入场打卡、出场打卡、和停留点;
按钮显示:放大、缩小;前一天、后一天;列表,历史。
tc-P2:查看无轨迹数据的当天记录
pc:用户已登录APP
用户当天无任何轨迹记录
用户当天无任何轨迹记录
用户进入移动轨迹模块
查看默认显示的当天轨迹
查看默认显示的当天轨迹
顶部显示:用户名、当日日期、轨迹状态(轨迹为空)、公里数(如:约0公里)
地图显示:地图显示"无轨迹,未打卡"的提示;
按钮显示:放大、缩小;前一天、后一天;列表,历史。
地图显示:地图显示"无轨迹,未打卡"的提示;
按钮显示:放大、缩小;前一天、后一天;列表,历史。
tc-P2:查看当天轨迹不全的数据(如:存在5分钟以上断续的轨迹)
pc:用户已登录APP
用户当天存在断续轨迹(间隔>5分钟)
用户当天存在断续轨迹(间隔>5分钟)
用户进入移动轨迹模块
查看默认显示的当天轨迹
查看默认显示的当天轨迹
顶部显示:用户名、当日日期、轨迹状态(轨迹不全)、公里数(如:约5.3公里)和停留时间(如:停留2.5小时),失联0.1小时
地图显示:地图显示非连续轨迹(有断裂带),入场打卡、出场打卡、和停留点;
按钮显示:放大、缩小;前一天、后一天;列表,历史。
地图显示:地图显示非连续轨迹(有断裂带),入场打卡、出场打卡、和停留点;
按钮显示:放大、缩小;前一天、后一天;列表,历史。
tc-P2:当天未打出场卡,中途没有出现失联5分钟以上,查看当天轨迹显示轨迹正常
pc:用户已登录APP
用户当天未打出场卡
用户当天未打出场卡
用户进入移动轨迹模块
查看默认显示的当天轨迹
查看默认显示的当天轨迹
顶部显示:用户名、当日日期、轨迹状态(轨迹正常)、公里数(如:约5.3公里)和停留时间(如:停留2.5小时)
地图显示:地图显示非连续轨迹(有断裂带),入场打卡、出场打卡、和停留点;
按钮显示:放大、缩小;前一天、后一天;列表,历史。
地图显示:地图显示非连续轨迹(有断裂带),入场打卡、出场打卡、和停留点;
按钮显示:放大、缩小;前一天、后一天;列表,历史。
tc-P2:查看当天轨迹数据-点击入场打卡点查看详情
pc:用户已登录APP
当天存在入场打卡记录
当天存在入场打卡记录
点击地图上的入场打卡标记
弹出框显示打卡时间、打卡状态、打卡位置
查看详情按钮
查看详情按钮
点击"查看详情"
点击后跳转至考勤记录默认页面,日期与移动轨迹这边的日期一致
tc-P2:查看当天轨迹数据-点击出场打卡点查看详情
pc:用户已登录APP
当天存在出场打卡记录
当天存在出场打卡记录
点击地图上的出场打卡标记
弹出框显示打卡时间、打卡状态、打卡位置
查看详情按钮
查看详情按钮
点击"查看详情"
点击后跳转至考勤记录默认页面,日期与移动轨迹这边的日期一致
tc-P2:查看当天轨迹数据-点击停留标识查看停留时间段详情
pc:用户已登录APP
当天存在停留记录
当天存在停留记录
点击地图上的停留标记
弹出框显示总停留时长
列出各停留时间段(如:10:00-10:30, 14:00-15:00)
停留地点位置
列出各停留时间段(如:10:00-10:30, 14:00-15:00)
停留地点位置
tc-P2:查看当天轨迹数据-点击轨迹的其他地方(非打卡点/非停留点)
pc:用户已登录APP
当天存在有轨迹
当天存在有轨迹
点击地图上轨迹的其他地方
弹出框显示
列出时间段(如:10:00-10:30, 14:00-15:00)
移动20分钟,约800米
列出时间段(如:10:00-10:30, 14:00-15:00)
移动20分钟,约800米
tc-P1:查看当天轨迹数据-验证地图缩放按钮功能
pc:用户已登录APP
地图加载完成
地图加载完成
连续点击放大按钮3次
连续点击缩小按钮3次
连续点击缩小按钮3次
每次点击放大/缩小级别变化±1
达到最大级别时放大按钮置灰或点击放大无变化
达到最小级别时缩小按钮置灰或点击缩小无变化
达到最大级别时放大按钮置灰或点击放大无变化
达到最小级别时缩小按钮置灰或点击缩小无变化
支持双指捏合/张开操作
缩放后轨迹路线自动适应显示
tc-P1:查看当天轨迹数据-验证【前一天】/【后一天】按钮功能
pc:用户已登录APP
地图加载完成
地图加载完成
连续点击"前一天"按钮直到最早日期,
尝试继续点击前一天
尝试继续点击前一天
到达最早日期时:
按钮变为置灰状态
Toast提示"已到达最早记录日期"
顶部日期显示不再变化
按钮变为置灰状态
Toast提示"已到达最早记录日期"
顶部日期显示不再变化
连续点击"后一天"按钮直到当前日期,
尝试继续点击后一天
尝试继续点击后一天
到达当前日期时:
按钮变为置灰状态
Toast提示"已到达当前日期"
顶部日期显示不再变化
按钮变为置灰状态
Toast提示"已到达当前日期"
顶部日期显示不再变化
tc-P1:查看当天轨迹数据-验证地图缩放功能与切换日期功能的交互
pc:用户已登录APP
地图加载完成
地图加载完成
当天移动轨迹,连续点击放大按钮3次
再切换【前一天】日期
再切换【前一天】日期
页面地图恢复到默认的尺寸大小,不保留之前日期的放大比例
当天移动轨迹,连续点击缩小按钮3次
再切换【前一天】日期
再切换【前一天】日期
页面地图恢复到默认的尺寸大小,不保留之前日期的缩小比例
tc-P1:查看当天轨迹数据-验证列表页跳转及数据同步
pc:用户已登录APP
当天存在移动记录
当天存在移动记录
在轨迹页面点击"列表"按钮
观察跳转后页面
进入轨迹动态页面
顶部标题保持相同日期
列表第一条记录应与地图入场打卡时间一致
停留时段汇总时长与顶部显示一致
顶部标题保持相同日期
列表第一条记录应与地图入场打卡时间一致
停留时段汇总时长与顶部显示一致
tc-P2:查看当天轨迹数据-地图显示-停留点和入场打卡点为同一个点
pc:用户已登录APP
用户当天有轨迹记录(含入场、出场、移动、停留)
用户当天有轨迹记录(含入场、出场、移动、停留)
能清晰的展示【停】与【入场打卡】标识
都可以被点击
tc-P2:查看当天轨迹数据-地图显示-停留点和出场打卡点为同一个点
pc:用户已登录APP
用户当天有轨迹记录(含入场、出场、移动、停留)
用户当天有轨迹记录(含入场、出场、移动、停留)
能清晰的展示【停】与【出场打卡】标识
都可以被点击
tc-P2:查看当天轨迹数据-地图显示-不同的位置有多个停留点
pc:用户已登录APP
用户当天有轨迹记录(含入场、出场、移动、停留)
用户当天有轨迹记录(含入场、出场、移动、停留)
能清晰的展示多个【停】标识
都可以被点击
tc-P2:【异常场景】查看跨天考勤-正常的打卡(22:00-06:30),它的轨迹数据归属日期
pc:跨天打卡轨迹归属验证(22:00-06:30)
用户在第一天 22:30 打卡入场
持续工作至第二天 06:30 打卡出场
期间产生移动轨迹(如22:30-06:30有轨迹记录)
用户在第一天 22:30 打卡入场
持续工作至第二天 06:30 打卡出场
期间产生移动轨迹(如22:30-06:30有轨迹记录)
查看第一天的轨迹页面
显示完整轨迹(22:30-06:30)
统计公里数,计算第一天时段(如22:30-06:30的移动距离)
停留时间计算到22:30-06:30
统计公里数,计算第一天时段(如22:30-06:30的移动距离)
停留时间计算到22:30-06:30
tc-P3:【异常场景】查看跨天考勤-异常的打卡6月2日(0:15-06:30),它的轨迹数据归属日期
pc:跨天打卡轨迹归属验证(0:15-06:30)
用户在第二天 0:15 打卡入场
持续工作至第二天 06:30 打卡出场
期间产生移动轨迹(如0:15-06:30有轨迹记录)
用户在第二天 0:15 打卡入场
持续工作至第二天 06:30 打卡出场
期间产生移动轨迹(如0:15-06:30有轨迹记录)
查看第一天(6月1日)的轨迹页面
显示完整轨迹(0:15-06:30)
统计公里数,计算第一天时段(如0:15-06:30的移动距离)
停留时间计算到0:15-06:30
统计公里数,计算第一天时段(如0:15-06:30的移动距离)
停留时间计算到0:15-06:30
查看第二天的轨迹页面
不显示轨迹(0:15-06:30)
tc-P2:【异常场景】出场打卡开启定位,轨迹数据上报到入场打卡时间后的24小时数据
用户有考勤规则,出场打卡开启定位
移动轨迹只记录到入场打卡时间后的24小时数据
下一个考勤入场打卡
就重新计算上报时间
tc-P2:【异常场景】用户忘记打出场卡,轨迹数据上报到入场打卡时间后的24小时数据
用户有考勤规则,用户忘记打出场卡
移动轨迹只记录到入场打卡时间后的24小时数据
下一个考勤入场打卡
就重新计算上报时间
历史轨迹
tc-P1:验证从移动轨迹页进入历史轨迹列表的默认显示
pc:用户已登录APP
当前移动轨迹页日期为2025-06-05(非周末)
2025年06月有多条轨迹记录
当前移动轨迹页日期为2025-06-05(非周末)
2025年06月有多条轨迹记录
在移动轨迹页点击“历史”按钮
观察默认加载的列表数据
顶部标题显示:历史轨迹(2025年6月)(与移动轨迹页日期同月)
列表按日期倒序排列(最新日期在最上方)
每条记录显示:
日期(格式:06月05日 ,06月01日 周日 )
公里数(如:5.3公里,无数据时显示0公里)
轨迹状态(轨迹正常/轨迹为空/轨迹不全)
底部显示:支持前一月/后一月切换按钮、月份选择器
列表按日期倒序排列(最新日期在最上方)
每条记录显示:
日期(格式:06月05日 ,06月01日 周日 )
公里数(如:5.3公里,无数据时显示0公里)
轨迹状态(轨迹正常/轨迹为空/轨迹不全)
底部显示:支持前一月/后一月切换按钮、月份选择器
tc-P2:历史轨迹-验证切换前一月/后一月数据
pc:用户已登录APP
当前显示2025年06月数据
当前显示2025年06月数据
点击“前一月”按钮
点击“后一月”按钮返回
点击“前一月”后:
列表数据更新为2025年5月记录
标题变更为“历史轨迹(2025年5月)”
点击“后一月”后:
返回历史轨迹(2025年6月)数据
若当前月为最新月份,则“后一月”按钮置灰
列表数据更新为2025年5月记录
标题变更为“历史轨迹(2025年5月)”
点击“后一月”后:
返回历史轨迹(2025年6月)数据
若当前月为最新月份,则“后一月”按钮置灰
tc-P2:历史轨迹-验证月份选择器功能
pc:用户已登录APP
当前显示2025年06月数据
当前显示2025年06月数据
点击底部月份选择器
弹出月份选择弹窗,可滚动选择年份、月份
选择2025年5月,点击确定按钮
列表刷新为2025年5月数据
标题同步更新为“历史轨迹(2025年5月)”
标题同步更新为“历史轨迹(2025年5月)”
tc-P3:历史轨迹-验证周末日期特殊标识
pc:用户已登录APP
当前月份包含周六/周日(历史轨迹(2025年5月))
当前月份包含周六/周日(历史轨迹(2025年5月))
查找周六、周日的日期记录
日期后分别加了周六、周日标识
tc-P1:历史轨迹-验证公里数、轨迹状态(轨迹正常/轨迹为空/轨迹不全)显示
pc:用户已登录APP
当前月份包含轨迹正常/轨迹为空/轨迹不全的数据
当前月份包含轨迹正常/轨迹为空/轨迹不全的数据
查看历史列表数据
每条记录显示正确:
日期(格式:06月05日 ,06月01日 周日 )
公里数(如:5.3公里,无数据时显示0公里)
轨迹状态(轨迹正常/轨迹为空/轨迹不全)
日期(格式:06月05日 ,06月01日 周日 )
公里数(如:5.3公里,无数据时显示0公里)
轨迹状态(轨迹正常/轨迹为空/轨迹不全)
tc-P1:历史轨迹-验证点击列表项查看当日轨迹
pc:用户已登录APP
2025年06月05日有轨迹数据
2025年06月05日有轨迹数据
点击列表中06月05日的一行数据
跳转至移动轨迹页,并自动加载06月05日数据
地图显示该日完整轨迹
顶部日期与列表选择一致
地图显示该日完整轨迹
顶部日期与列表选择一致
轨迹动态(列表)
tc-P1:查看轨迹动态页面-数据显示
pc:用户已登录APP
用户当天有轨迹记录(含入场、出场、移动、停留)
用户当天有轨迹记录(含入场、出场、移动、停留)
从轨迹地图页点击“列表”进入轨迹动态页面
观察默认显示内容
顶部显示:用户名、当前日期(格式:06月04日)、轨迹状态(轨迹正常)、公里数(如:约5.3公里)、停留时间(如:停留2.5小时),失联0.1小时(没有失联不显示)
按时间顺序展示当天所有定位记录(入场、移动、停留、出场)
支持前一天/后一天切换
底部有“地图”按钮可返回地图视图
按时间顺序展示当天所有定位记录(入场、移动、停留、出场)
支持前一天/后一天切换
底部有“地图”按钮可返回地图视图
tc-P3:查看轨迹动态页面-验证停留记录显示正确性
pc:用户已登录APP
用户当天有轨迹记录(含入场、出场、移动、停留)
当天存在至少1次停留(时长≥15分钟)
用户当天有轨迹记录(含入场、出场、移动、停留)
当天存在至少1次停留(时长≥15分钟)
进入轨迹动态页
查找带有“停留”标签的记录
显示停留时长和位置
时长和位置显示正常
时长和位置显示正常
tc-P3:查看轨迹动态页面-验证入场/出场打卡记录显示正确性
pc:用户已登录APP
用户当天有轨迹记录(含入场、出场、移动、停留)
用户当天有轨迹记录(含入场、出场、移动、停留)
进入轨迹动态页
查找第一条记录(应为入场打卡)
查找最后一条记录(应为出场打卡)
查找第一条记录(应为入场打卡)
查找最后一条记录(应为出场打卡)
显示入场/出场打卡时间、和打卡定位位置
tc-P3:查看轨迹动态页面-验证移动记录计算正确性
pc:用户已登录APP
用户当天有轨迹记录(含入场、出场、移动、停留)
用户当天有轨迹记录(含入场、出场、移动、停留)
进入轨迹动态页
查找带有“移动”标签的记录
检查时间、距离是否匹配
查找带有“移动”标签的记录
检查时间、距离是否匹配
显示对应移动时长和移动距离
tc-P3:查看轨迹动态页面-验证【前一天】/【后一天】切换功能
pc:用户已登录APP,进入轨迹动态页
点击“前一天”按钮
点击“后一天”按钮
点击“后一天”按钮
日期切换后,列表数据实时刷新
若无数据,显示“无轨迹记录”
若无数据,显示“无轨迹记录”
连续点击"前一天"按钮直到最早日期,
尝试继续点击前一天
尝试继续点击前一天
到达最早日期时:
按钮变为置灰状态
Toast提示"已到达最早记录日期"
顶部日期显示不再变化
按钮变为置灰状态
Toast提示"已到达最早记录日期"
顶部日期显示不再变化
连续点击"后一天"按钮直到当前日期,
尝试继续点击后一天
尝试继续点击后一天
到达当前日期时:
按钮变为置灰状态
Toast提示"已到达当前日期"
顶部日期显示不再变化
按钮变为置灰状态
Toast提示"已到达当前日期"
顶部日期显示不再变化
tc-P3:查看轨迹动态页面-验证点击地图按钮,返回移动轨迹界面
pc:用户已登录APP
当前处于轨迹动态页
当前处于轨迹动态页
点击“地图”按钮
返回移动轨迹界面,且保持当前日期不变
地图显示与列表对应的轨迹点
地图显示与列表对应的轨迹点
员工分布
员工分布
tc-P2:员工分布-定位扫描界面显示
pc:用户已登录且标识为管理工人/建筑工人
进入员工分布模块。
观察初始界面。
显示搜索人员定位正在扫描的界面,显示【结束定位】按钮
放大、缩小、刷新按钮置灰状态
放大、缩小、刷新按钮置灰状态
tc-P3:员工分布-定位扫描界面,点击【结束定位】扫描
pc:用户已登录且标识为管理工人
进入员工分布模块。
观察初始界面。
显示搜索人员定位正在扫描的界面,显示结束定位按钮
点击【结束定位】扫描按钮
显示的在线和离线人数都为0
tc-P0:员工分布-管理员可查看所有人员的分布
pc:用户已登录且标识为管理工人
进入员工分布模块。
等待定位扫描完成。
查看地图上显示的人员分布
顶部显示:在线人员数和离线人员数
默认显示在线的,地图上显示在线人员的默认头像和名称。
默认显示在线的,地图上显示在线人员的默认头像和名称。
点击离线tab
可切换到离线界面,地图上显示离线人员的默认头像和名称。
在线人员数和离线人员数的总和
显示的是项目下所有人员的总和
tc-P2:员工分布-建筑工人可查看自己个人的分布
pc:用户已登录且标识为建筑工人
进入员工分布模块。
等待定位扫描完成。
查看地图上显示的人员分布
地图上仅显示当前用户的分布,包括默认头像和名称
显示在线(1)、离线(0)
显示在线(1)、离线(0)
点击离线tab
可切换到离线界面,提示:当前无失联的员工。
地图上不显示人员头像和名称
地图上不显示人员头像和名称
tc-P3:员工分布-定位扫描结束,在线tab页地图的放大缩小
pc:用户已登录且定位扫描完成
进入员工分布模块。
等待定位扫描完成。
尝试放大和缩小地图
地图支持放大和缩小操作
连续点击放大按钮3次
连续点击缩小按钮3次
连续点击缩小按钮3次
每次点击放大/缩小级别变化±1
达到最大级别时放大按钮置灰或点击放大无变化
达到最小级别时缩小按钮置灰或点击缩小无变化
达到最大级别时放大按钮置灰或点击放大无变化
达到最小级别时缩小按钮置灰或点击缩小无变化
支持双指捏合/张开操作
缩放后轨迹路线自动适应显示
tc-P3:员工分布-定位扫描结束,离线tab页地图的放大缩小
pc:用户已登录且定位扫描完成
进入员工分布模块。
等待定位扫描完成。
切换到离线tab页
尝试放大和缩小地图
等待定位扫描完成。
切换到离线tab页
尝试放大和缩小地图
地图支持放大和缩小操作
连续点击放大按钮3次
连续点击缩小按钮3次
连续点击缩小按钮3次
每次点击放大/缩小级别变化±1
达到最大级别时放大按钮置灰或点击放大无变化
达到最小级别时缩小按钮置灰或点击缩小无变化
达到最大级别时放大按钮置灰或点击放大无变化
达到最小级别时缩小按钮置灰或点击缩小无变化
支持双指捏合/张开操作
缩放后轨迹路线自动适应显示
tc-P2:员工分布-定位扫描结束,在线tab页(点击刷新按钮)重新获取员工分布
pc:用户已登录且定位扫描完成
操作连续点击放大按钮3次或连续点击缩小按钮3次
每次点击放大/缩小级别变化±1
在线状态的用户A手机关机30分钟以上
出现30分钟以上没有上报轨迹数据
点击刷新按钮
地图重新定位,重置地图缩放比例
默认显示在线TAB页
在线数-1,离线数+1,
人员分布信息更新,用户A为离线人员
默认显示在线TAB页
在线数-1,离线数+1,
人员分布信息更新,用户A为离线人员
tc-P2:员工分布-定位扫描结束,离线tab页(点击刷新按钮)重新获取员工分布
pc:用户已登录且定位扫描完成
操作连续点击放大按钮3次或连续点击缩小按钮3次
每次点击放大/缩小级别变化±1
离线状态的用户B手机开启APP30秒以上
有上报轨迹数据
点击刷新按钮
地图重新定位,重置地图缩放比例
默认显示在线TAB页
在线数+1,离线数-1,
地图上人员分布信息更新,用户B为在线人员
默认显示在线TAB页
在线数+1,离线数-1,
地图上人员分布信息更新,用户B为在线人员
tc-P2:员工分布-在线界面点击人员头像,进入其当天移动轨迹页面
选择人员
tc-P3:员工分布-建筑工人选择人员按钮隐藏
pc:用户已登录且标识为建筑工人
进入员工分布模块。
等待定位扫描完成。
查看界面。
选择人员按钮隐藏,无法选择其他人员
tc-P1:员工分布-管理人员可按班组分类、可多选、全选在线人员
pc:用户已登录且标识为管理工人,存在多个班组和存在多个在线农民工。
进入员工分布模块。
点击选择人员按钮。
进入选择定位员工界面,人员组织结构为树形结构
人员组织结构,单个选择人员
可单个选中在线员工,离线员工不可选
人员组织结构,多个选择人员
可多个选中在线员工,离线员工不可选
人员组织结构,按班组选择人员
可选择整个班组中所有在线员工,离线员工不可选
人员组织结构,全选选择人员
选择所有班组中在线员工,离线员工不可选
点击【确定】按钮
默认返回员工分布在线tab界面,地图上显示已选人员的定位(头像和名称)
顶部在线人数和离线人数还是取项目上所有的,选择员工不影响人数的取值
顶部在线人数和离线人数还是取项目上所有的,选择员工不影响人数的取值
tc-P3:员工分布-选择人员后重新进入是否清空历史选择(缓存验证)
pc:用户已登录且标识为管理工人,存在多个班组和存在多个在线农民工。
选择若干人员并点击取消
返回地图
再次点击“选择人员”
无选中状态
tc-P3:员工分布-管理人员选择人员界面,不选人员确定处理为全选
pc:用户已登录且标识为管理工人,存在多个班组和存在多个在线农民工,未选择任何人员
进入员工分布模块。
点击选择人员按钮。
直接点击确认按钮。
返回员工分布界面,和初次进入一样,默认显示所有人员定位分布信息
tc-P2:员工分布-查看人员组织结构是树形结构
pc:用户已登录且标识为管理工人,存在部门组织架构和班组分类
进入员工分布模块。
点击选择人员按钮。
查看组织树。
点击选择人员按钮。
查看组织树。
第一层级显示项目名称
第二层级显示班组名称
第三层级显示农民工 数据(姓名和手机号脱敏显示)
tc-P3:员工分布-管理人员再次进入选择人员界面时,之前选择的人员不会自动回显
pc:用户已登录且标识为管理工人。
已通过“选择人员”功能选中过部分农民工。
已返回员工分布界面并显示已选人员的定位。
已通过“选择人员”功能选中过部分农民工。
已返回员工分布界面并显示已选人员的定位。
进入员工分布模块。
点击选择人员按钮,进入人员选择界面。
选择若干在线农民工(支持多选),点击确认按钮返回。
点击选择人员按钮,进入人员选择界面。
选择若干在线农民工(支持多选),点击确认按钮返回。
地图上显示已选人员的定位。
再次点击选择人员按钮,重新进入人员选择界面。
再次进入选择人员界面时,所有人员默认未选中状态,不会自动回显之前的选择记录
tc-P2:员工分布-选择员工后(点击刷新按钮)会重新获取所有员工分布
pc:用户已登录且选择员工,加载完成
点击刷新按钮
地图重新定位,重置地图缩放比例
默认显示在线TAB页
顶部在线人数和离线人数还是取项目上所有的,
地图上显示所有在线员工的头像和名称
默认显示在线TAB页
顶部在线人数和离线人数还是取项目上所有的,
地图上显示所有在线员工的头像和名称
tc-P2:员工分布-选择员工时在线,选择后点击确定时,员工已离线,返回地图正常显示
pc:用户已登录且标识为管理工人,存在多个班组和存在多个在线农民工,未选择任何人员
选择在线用户A
可以被选中
在选择界面停留一段时间,等用户A离线,点击确定
返回员工分布,界面怎么显示,定位在那个区域的地图,缩放比例?
tc-P2:当用户为管理工人,在离线tab界面选择按钮置灰不可点击
离线
tc-P1:员工分布-定位扫描完成后,切换到离线界面
pc:进入离线人数界面,存在离线人员
进入离线界面
提示:地图显示X人,还有Y人无法获取位置
X:当天有定位数据但有30分钟以上没有上报轨迹数据的人数
Y:当天没有定位数据的人数
X:当天有定位数据但有30分钟以上没有上报轨迹数据的人数
Y:当天没有定位数据的人数
当天有定位数据但有30分钟以上没有上报轨迹数据的人
在地图上显示,显示其最后一次上报数据的定位点
当天没有定位数据的人
地图上不显示对应人员
tc-P2:员工分布-离线界面点击人员头像,进入其当天移动轨迹页面
tc-P1:员工分布-离线界面,点击提示进入离线人数界面
pc:进入离线人数界面,存在离线人员
进入离线人数界面
跳转至离线人数界面,显示分类统计:
有最后位置:X人(30分钟未更新)。
无法获取位置:Y人(当天无数据)。
默认有最后位置tab
有最后位置:X人(30分钟未更新)。
无法获取位置:Y人(当天无数据)。
默认有最后位置tab
tc-P2:员工分布-离线界面,无离线人员时,提示当前无离线人数,不显示离线提示
pc:进入离线界面,不存在离线人员
tc-P1:员工分布-离线人数界面,数据按“有最后位置”、“无法获取位置”TAB显示
pc:进入离线人数界面,存在X和Y人员
查看有最后位置人员列表
显示最后上报位置、异常原因(如“30分钟未更新”)。
检查是否支持查看轨迹和拨打电话
查看无法获取位置人员列表
仅显示异常原因(如“当天无定位数据”)。
检查是否支持拨打电话(无轨迹功能)
tc-P1:员工分布-离线人数界面,在有最后位置tab验证轨迹查看功能
pc:进入离线人数界面,存在X人员
进入离线人数界面。
点击某人员的查看轨迹按钮。
跳转至移动轨迹页面,显示该人员当天的定位轨迹
tc-P1:员工分布-离线人数界面,在有最后位置tab验证拨打电话功能
pc:进入离线人数界面,存在X人员
进入离线人数界面。
在有最后位置tab,点击某人员的拨打电话按钮。
在有最后位置tab,点击某人员的拨打电话按钮。
调用系统拨号功能,自动填充该人员脱敏后的手机号。
点击某人员的联系直属领导按钮
调用系统拨号功能,拨打对应农民工所在班组的带班组长电话
tc-P2:员工分布-离线人数界面,在无法获取位置tab验证拨打电话功能
pc:进入离线人数界面,存在Y人员
进入离线人数界面。
在无法获取位置tab,点击某人员的拨打电话按钮。
在无法获取位置tab,点击某人员的拨打电话按钮。
调用系统拨号功能,自动填充该人员脱敏后的手机号。
点击某人员的联系直属领导按钮
调用系统拨号功能,拨打对应农民工所在班组的带班组长电话
tc-P2:员工分布-离线人数界面,某人员的带班组长为空,拨号时有相应的提示
pc:进入离线人数界面,存在Y人员
点击某人员的联系直属领导按钮
带班组长电话为空
工作路线
tc-P1:工作路线管理人员有查看权限、建筑工人无权限
用户为管理工人,项目下存在多个人员
进入工作路线模块。
检查是否可查看所有人员列表(按项目/班组分类)
进入工作路线模块。
检查是否可查看所有人员列表(按项目/班组分类)
支持选择项目下所有人员,无权限限制。
可按班组、部门树形结构筛选人员。
用户为建筑工人,进入工作路线模块
提示“无查看工作路线权限”,无法进入功能界面
tc-P1:工作路线-查看人员组织结构是树形结构显示
进入工作路线模块
查看层级结构:
第一层级:项目名称。
第二层级:班组名称。
第三层级:农民工数据(姓名、脱敏手机号、轨迹状态)
第一层级:项目名称。
第二层级:班组名称。
第三层级:农民工数据(姓名、脱敏手机号、轨迹状态)
tc-P2:工作路线-验证人员组织结构的搜索功能
pc:存在多名农民工,用户为管理人员
进入工作路线模块。在搜索框输入姓名
支持按姓名模糊搜索,结果实时更新
进入工作路线模块。在搜索框输入手机号
支持按手机号模糊搜索,结果实时更新
tc-P1:工作路线-查看某一个人员的移动轨迹
pc:存在多名农民工,用户为管理人员
选择状态为轨迹正常的员工,点击该员工
进入该员工的轨迹界面
顶部显示:用户名、当日日期、轨迹状态(轨迹正常)、公里数(如:约5.3公里)和停留时间(如:停留2.5小时)
地图显示:地图上显示连续轨迹路线,入场打卡、出场打卡、和停留点;
按钮显示:放大、缩小;前一天、后一天;列表,历史。
顶部显示:用户名、当日日期、轨迹状态(轨迹正常)、公里数(如:约5.3公里)和停留时间(如:停留2.5小时)
地图显示:地图上显示连续轨迹路线,入场打卡、出场打卡、和停留点;
按钮显示:放大、缩小;前一天、后一天;列表,历史。
选择状态为轨迹为空的员工,点击该员工
进入该员工的轨迹界面
顶部显示:用户名、当日日期、轨迹状态(轨迹为空)、公里数(如:约0公里)
地图显示:地图显示"无轨迹,未打卡"的提示;
按钮显示:放大、缩小;前一天、后一天;列表,历史。
顶部显示:用户名、当日日期、轨迹状态(轨迹为空)、公里数(如:约0公里)
地图显示:地图显示"无轨迹,未打卡"的提示;
按钮显示:放大、缩小;前一天、后一天;列表,历史。
选择状态为轨迹不全的员工,点击该员工
进入该员工的轨迹界面
顶部显示:用户名、当日日期、轨迹状态(轨迹不全)、公里数(如:约5.3公里)和停留时间(如:停留2.5小时),失联0.1小时
地图显示:地图显示非连续轨迹(有断裂带),入场打卡、出场打卡、和停留点;
按钮显示:放大、缩小;前一天、后一天;列表,历史。
顶部显示:用户名、当日日期、轨迹状态(轨迹不全)、公里数(如:约5.3公里)和停留时间(如:停留2.5小时),失联0.1小时
地图显示:地图显示非连续轨迹(有断裂带),入场打卡、出场打卡、和停留点;
按钮显示:放大、缩小;前一天、后一天;列表,历史。
我的
个人中心
tc-P1:进入个人中心页面,正常显示用户名称和头像
pc:用户已登录APP
用户个人中心页面已加载
用户个人中心页面已加载
进入个人中心页面,检查用户名称和头像是否显示
用户名称正确显示
用户头像正确显示(如未设置头像,显示默认头像)
tc-P2:进入个人中心页面,正常显示用户角色
pc:用户已登录APP
用户角色包含工人类型(如字典配置枚举值“管理人员、建筑工人”等)
用户角色包含工人类型(如字典配置枚举值“管理人员、建筑工人”等)
进入个人中心页面,检查用户角色显示
显示用户的工人类型(如“建筑工人”)
管理用户的工人类型(如“管理人员”)
管理用户的工人类型(如“管理人员”)
tc-P2:进入个人中心页面,正常显示用户手机号码
pc:用户已登录APP
用户个人中心页面已加载
用户个人中心页面已加载
进入个人中心页面,检查手机号码显示区域
正确显示用户的手机号码(与账号绑定的手机号一致)
号码格式正确(如“138****1234”或完整显示)
tc-P2:进入个人中心页面,正常显示用户当前企业
pc:用户已登录APP
用户已关联企业
用户已关联企业
进入个人中心页面,检查“当前企业”显示区域
正确显示用户所属企业名称
无切换企业的入口或按钮
tc-P2:进入个人中心页面,正常显示用户当前项目
pc:用户已登录APP
用户已关联项目
用户已关联项目
进入个人中心页面,检查“当前项目”显示区域
正确显示用户当前项目名称
有切换项目的入口或按钮(暂不可切换)
有切换项目的入口或按钮(暂不可切换)
权限设置
tc-P1:权限设置-验证APP定位权限设置为“始终允许”
pc:手机系统为Android/iOS
APP已安装但未授予定位权限
APP已安装但未授予定位权限
进入APP设置页 → 点击“定位设置”
选择“始终允许”
选择“始终允许”
APP内显示“定位权限:已设置(始终允许)
返回手机系统设置查看权限状态
系统设置中该APP的定位权限为“始终允许”
tc-P1:权限设置-验证开启自启动后APP后台保活能力
pc:手机已开启省电模式
APP自启动权限默认关闭
APP自启动权限默认关闭
进入APP设置页 → 点击“应用设置” → 开启“自启动”
手动杀死APP进程
手动杀死APP进程
等待5分钟后检查APP是否自动唤醒
返回手机系统设置查看权限状态
系统设置中该APP的自启动权限为“允许”
tc-P1:权限设置-验证电池消耗设置为“无限制”
pc:手机系统默认限制后台应用耗电
进入APP设置页 → 点击“电池设置”
选择“电池消耗:无限制”
选择“电池消耗:无限制”
APP内显示“电池设置:已设置(无限制)
返回手机系统设置查看权限状态
系统设置中该APP的自启动权限为“允许”
在系统设置中查看电池优化状态
系统电池优化列表中该APP显示“无限制”
长时间后台运行时(如2小时)
无强制休眠现象
tc-P1:权限设置-验证省电模式设置为“均衡模式”
在APP电池设置中选择“省电模式:均衡模式”
APP内显示“省电模式:已设置(均衡模式)
机型适配
tc-P0:首次安装登录后,读取已安装应用列表权限请求验证(Android/HarmonyOS/iOS各品牌)
pc:适用系统/品牌:Android(小米/华为/OPPO/vivo)、HarmonyOS(华为)、iOS(苹果)
1. 手机未安装过该APP;
2. 手机电量≥50%,网络连接正常;
3. 手机系统为Android 10+/HarmonyOS 2.0+/iOS 14+(主流版本)。
1. 手机未安装过该APP;
2. 手机电量≥50%,网络连接正常;
3. 手机系统为Android 10+/HarmonyOS 2.0+/iOS 14+(主流版本)。
1. 在测试手机上安装APP;
2. 打开APP,使用账号密码登录;
3. 观察登录后是否弹出权限请求弹框。
1、弹出权限请求弹框(非iOS),标题为“需要权限”,
内容包含:“移动考勤”读取已安装应用列表(禁止/允许);
2、无权限弹框(iOS),正常进入APP主页面(因iOS不支持此权限,APP自动降级处理)
内容包含:“移动考勤”读取已安装应用列表(禁止/允许);
2、无权限弹框(iOS),正常进入APP主页面(因iOS不支持此权限,APP自动降级处理)
点击“允许”
自动跳转至APP权限设置页面(含定位、自启动、电池设置等选项)
点击“禁止”
弹框关闭,APP停留在登录成功默认页(应用平台)
并提示“部分功能可能受限,请前往设置开启权限”
并提示“部分功能可能受限,请前往设置开启权限”
tc-P0:进入考勤打卡页面定位权限请求验证(Android/HarmonyOS/iOS各品牌)
pc:适用系统/品牌:Android(小米/华为/OPPO/vivo)、HarmonyOS(华为)、iOS(苹果)
1. 手机已安装APP并登录;
2. 手机未授予APP定位权限(首次安装未授权或已手动关闭);
3. 进入APP主页面。
1. 手机已安装APP并登录;
2. 手机未授予APP定位权限(首次安装未授权或已手动关闭);
3. 进入APP主页面。
1. 在APP主页面点击“考勤打卡”入口;
2. 观察是否弹出定位权限请求弹框。
2. 观察是否弹出定位权限请求弹框。
弹出弹框,内容为:“需要您开启位置定位权限,才能为您提供位置轨迹相关服务”
点击“允许”
APP获取定位权限(可通过“设置-应用权限”验证),
并正常进入打卡页面(显示当前位置)
并正常进入打卡页面(显示当前位置)
点击“禁止”
弹框关闭,打卡页面提示“请开启定位权限以使用打卡功能”(或直接跳转至权限设置页面)
tc-P1:定位权限设置关闭后,应用后台运行,轨迹上报存活状态验证(Android/HarmonyOS/iOS各品牌)
pc:适用系统/品牌:Android(小米/华为/OPPO/vivo)、HarmonyOS(华为)、iOS(苹果)
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、电池设置(不允许优化)、省电模式(均衡模式)、自启动权限:自启动;(避免因权限问题影响轨迹上报)
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、电池设置(不允许优化)、省电模式(均衡模式)、自启动权限:自启动;(避免因权限问题影响轨迹上报)
1. 在APP中完成入场打卡后,手动关闭APP定位权限,并离开页面(切换至后台);
2. 等待30分钟后,重新打开APP,查看移动轨迹->列表
2. 等待30分钟后,重新打开APP,查看移动轨迹->列表
轨迹记录显示无轨迹30分钟(11:00-11:30手机已关闭定位服务),无等待的30分钟的轨迹数据/或者查看数据库核对
tc-P1:定位权限设置关闭后,杀掉APP应用程序,轨迹上报存活状态验证(Android/HarmonyOS/iOS各品牌)
pc:适用系统/品牌:Android(小米/华为/OPPO/vivo)、HarmonyOS(华为)、iOS(苹果)
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、电池设置(不允许优化)、省电模式(均衡模式)、自启动权限:自启动;(避免因权限问题影响轨迹上报)
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、电池设置(不允许优化)、省电模式(均衡模式)、自启动权限:自启动;(避免因权限问题影响轨迹上报)
1. 在APP中完成入场打卡后,手动关闭APP定位权限,并杀掉APP应用程序;
2. 等待30分钟后,重新打开APP,查看移动轨迹->列表
2. 等待30分钟后,重新打开APP,查看移动轨迹->列表
轨迹记录显示无轨迹30分钟(11:00-11:30手机已关闭定位服务),无等待的30分钟的轨迹数据/或者查看数据库核对
tc-P0:打卡拍照相机权限请求验证(Android/HarmonyOS/iOS各品牌)
pc:适用系统/品牌:Android(小米/华为/OPPO/vivo)、HarmonyOS(华为)、iOS(苹果)
1. 手机已安装APP并登录;
2. 手机未授予APP相机权限(首次安装未授权或已手动关闭);
3. 进入APP“考勤打卡”页面。
1. 手机已安装APP并登录;
2. 手机未授予APP相机权限(首次安装未授权或已手动关闭);
3. 进入APP“考勤打卡”页面。
1. 在打卡页面点击“拍照”按钮;
2. 观察是否弹出相机权限请求弹框。
2. 观察是否弹出相机权限请求弹框。
弹出弹框,内容为:“需要访问您的相机来拍摄照片和录制视频”
点击“允许”
相机功能正常调用(可预览摄像头画面并拍照)
点击“拒绝”
弹框关闭,拍照按钮提示“请开启相机权限以拍摄照片”
tc-P0:移动轨迹页面定位权限请求验证(Android/HarmonyOS/iOS各品牌)
pc:适用系统/品牌:Android(小米/华为/OPPO/vivo)、HarmonyOS(华为)、iOS(苹果)
1. 手机已安装APP并登录;
2. 手机未授予APP定位权限(首次安装未授权或已手动关闭);
3. 进入APP主页面。
1. 手机已安装APP并登录;
2. 手机未授予APP定位权限(首次安装未授权或已手动关闭);
3. 进入APP主页面。
1. 在APP主页面点击“移动轨迹”入口;
2. 观察是否弹出定位权限请求弹框。
2. 观察是否弹出定位权限请求弹框。
弹出弹框,内容为:“需要您开启位置定位权限,才能为您提供位置轨迹相关服务”
点击“允许”
相机功能正常调用(可预览摄像头画面并拍照)
点击“拒绝”
弹框关闭,拍照按钮提示“请开启相机权限以拍摄照片”
tc-P0:自启动权限设置开启后,应用后台运行,轨迹上报存活状态验证(Android/HarmonyOS)
pc:适用系统/品牌:Android(小米/华为/OPPO/vivo)、HarmonyOS(华为)
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、电池设置(不允许优化)、省电模式(均衡模式);(避免因权限问题影响轨迹上报)
3. 进入手机设置,关闭APP自启动权限(路径:
- 小米:设置 > 应用设置 > 权限管理 > 自启动管理 > 开启;
- 华为:设置 > 应用 > 权限管理 > 自启动 > 开启;
- OPPO:设置 > 应用管理 > 权限 > 自启动 > 开启;
- vivo:设置 > 应用与权限 > 权限管理 > 自启动 > 开启;
- HarmonyOS(华为):设置 > 应用 > 权限 > 自启动 > 开启)
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、电池设置(不允许优化)、省电模式(均衡模式);(避免因权限问题影响轨迹上报)
3. 进入手机设置,关闭APP自启动权限(路径:
- 小米:设置 > 应用设置 > 权限管理 > 自启动管理 > 开启;
- 华为:设置 > 应用 > 权限管理 > 自启动 > 开启;
- OPPO:设置 > 应用管理 > 权限 > 自启动 > 开启;
- vivo:设置 > 应用与权限 > 权限管理 > 自启动 > 开启;
- HarmonyOS(华为):设置 > 应用 > 权限 > 自启动 > 开启)
1. 在APP中完成入场打卡并离开页面(切换至后台);
2. 等待30分钟后,重新打开APP,查看移动轨迹
2. 等待30分钟后,重新打开APP,查看移动轨迹
点击最新的轨迹点,查看内容包含等待的30分钟的定位数据(定位地址正确、时间段包含等待的30分钟)
3.点击“列表”
显示的最新轨迹记录,包含等待的30分钟的轨迹数据/或者查看数据库核对
tc-P1:自启动权限设置开启后,杀掉APP应用程序,轨迹上报存活状态验证(Android/HarmonyOS)
pc:适用系统/品牌:Android(小米/华为/OPPO/vivo)、HarmonyOS(华为)
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、电池设置(不允许优化)、省电模式(均衡模式);(避免因权限问题影响轨迹上报)
3. 进入手机设置,关闭APP自启动权限(路径:
- 小米:设置 > 应用设置 > 权限管理 > 自启动管理 > 开启;
- 华为:设置 > 应用 > 权限管理 > 自启动 > 开启;
- OPPO:设置 > 应用管理 > 权限 > 自启动 > 开启;
- vivo:设置 > 应用与权限 > 权限管理 > 自启动 > 开启;
- HarmonyOS(华为):设置 > 应用 > 权限 > 自启动 > 开启)
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、电池设置(不允许优化)、省电模式(均衡模式);(避免因权限问题影响轨迹上报)
3. 进入手机设置,关闭APP自启动权限(路径:
- 小米:设置 > 应用设置 > 权限管理 > 自启动管理 > 开启;
- 华为:设置 > 应用 > 权限管理 > 自启动 > 开启;
- OPPO:设置 > 应用管理 > 权限 > 自启动 > 开启;
- vivo:设置 > 应用与权限 > 权限管理 > 自启动 > 开启;
- HarmonyOS(华为):设置 > 应用 > 权限 > 自启动 > 开启)
1. 在APP中完成入场打卡后,杀掉APP应用程序;
2. 等待30分钟后,重新打开APP,查看移动轨迹
2. 等待30分钟后,重新打开APP,查看移动轨迹
点击最新的轨迹点,查看内容包含等待的30分钟的定位数据(定位地址正确、时间段包含等待的30分钟)
3.点击“列表”
显示的最新轨迹记录,包含等待的30分钟的轨迹数据/或者查看数据库核对
tc-P1:自启动权限设置开启后,手机关机重启,轨迹上报存活状态验证(Android/HarmonyOS)
pc:适用系统/品牌:Android(小米/华为/OPPO/vivo)、HarmonyOS(华为)
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、电池设置(不允许优化)、省电模式(均衡模式);(避免因权限问题影响轨迹上报)
3. 进入手机设置,关闭APP自启动权限(路径:
- 小米:设置 > 应用设置 > 权限管理 > 自启动管理 > 开启;
- 华为:设置 > 应用 > 权限管理 > 自启动 > 开启;
- OPPO:设置 > 应用管理 > 权限 > 自启动 > 开启;
- vivo:设置 > 应用与权限 > 权限管理 > 自启动 > 开启;
- HarmonyOS(华为):设置 > 应用 > 权限 > 自启动 > 开启)
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、电池设置(不允许优化)、省电模式(均衡模式);(避免因权限问题影响轨迹上报)
3. 进入手机设置,关闭APP自启动权限(路径:
- 小米:设置 > 应用设置 > 权限管理 > 自启动管理 > 开启;
- 华为:设置 > 应用 > 权限管理 > 自启动 > 开启;
- OPPO:设置 > 应用管理 > 权限 > 自启动 > 开启;
- vivo:设置 > 应用与权限 > 权限管理 > 自启动 > 开启;
- HarmonyOS(华为):设置 > 应用 > 权限 > 自启动 > 开启)
1. 在APP中完成入场打卡后,并手机关机重启;
2. 等待30分钟后,重新打开APP,查看移动轨迹
2. 等待30分钟后,重新打开APP,查看移动轨迹
点击最新的轨迹点,查看内容包含等待的30分钟的定位数据(定位地址正确、时间段包含等待的30分钟)
3.点击“列表”
显示的最新轨迹记录,包含等待的30分钟的轨迹数据/或者查看数据库核对
tc-P1:自启动权限设置关闭后,应用后台运行,轨迹上报存活状态验证(Android/HarmonyOS)
pc:适用系统/品牌:Android(小米/华为/OPPO/vivo)、HarmonyOS(华为)
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、电池设置(不允许优化)、省电模式(均衡模式);(避免因权限问题影响轨迹上报)
3. 进入手机设置,关闭APP自启动权限(路径:
- 小米:设置 > 应用设置 > 权限管理 > 自启动管理 > 关闭;
- 华为:设置 > 应用 > 权限管理 > 自启动 > 关闭;
- OPPO:设置 > 应用管理 > 权限 > 自启动 > 关闭;
- vivo:设置 > 应用与权限 > 权限管理 > 自启动 > 关闭;
- HarmonyOS(华为):设置 > 应用 > 权限 > 自启动 > 关闭)
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、电池设置(不允许优化)、省电模式(均衡模式);(避免因权限问题影响轨迹上报)
3. 进入手机设置,关闭APP自启动权限(路径:
- 小米:设置 > 应用设置 > 权限管理 > 自启动管理 > 关闭;
- 华为:设置 > 应用 > 权限管理 > 自启动 > 关闭;
- OPPO:设置 > 应用管理 > 权限 > 自启动 > 关闭;
- vivo:设置 > 应用与权限 > 权限管理 > 自启动 > 关闭;
- HarmonyOS(华为):设置 > 应用 > 权限 > 自启动 > 关闭)
1. 在APP中完成入场打卡并离开页面(切换至后台);
2. 等待30分钟后,重新打开APP,查看移动轨迹
2. 等待30分钟后,重新打开APP,查看移动轨迹
点击最新的轨迹点,查看内容包含等待的30分钟的定位数据(定位地址正确、时间段包含等待的30分钟)
3.点击“列表”
显示的最新轨迹记录,包含等待的30分钟的轨迹数据/或者查看数据库核对
tc-P1:自启动权限设置关闭后,杀掉APP应用程序,轨迹上报存活状态验证(Android/HarmonyOS)
pc:适用系统/品牌:Android(小米/华为/OPPO/vivo)、HarmonyOS(华为)
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、电池设置(不允许优化)、省电模式(均衡模式);(避免因权限问题影响轨迹上报)
3. 进入手机设置,关闭APP自启动权限(路径:
- 小米:设置 > 应用设置 > 权限管理 > 自启动管理 > 关闭;
- 华为:设置 > 应用 > 权限管理 > 自启动 > 关闭;
- OPPO:设置 > 应用管理 > 权限 > 自启动 > 关闭;
- vivo:设置 > 应用与权限 > 权限管理 > 自启动 > 关闭;
- HarmonyOS(华为):设置 > 应用 > 权限 > 自启动 > 关闭)
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、电池设置(不允许优化)、省电模式(均衡模式);(避免因权限问题影响轨迹上报)
3. 进入手机设置,关闭APP自启动权限(路径:
- 小米:设置 > 应用设置 > 权限管理 > 自启动管理 > 关闭;
- 华为:设置 > 应用 > 权限管理 > 自启动 > 关闭;
- OPPO:设置 > 应用管理 > 权限 > 自启动 > 关闭;
- vivo:设置 > 应用与权限 > 权限管理 > 自启动 > 关闭;
- HarmonyOS(华为):设置 > 应用 > 权限 > 自启动 > 关闭)
1. 在APP中完成入场打卡后,杀掉APP应用程序;
2. 等待30分钟后,重新打开APP,查看移动轨迹->列表
2. 等待30分钟后,重新打开APP,查看移动轨迹->列表
轨迹记录显示无轨迹30分钟(11:00-11:30移动考勤APP程序已被关闭),无等待的30分钟的轨迹数据/或者查看数据库核对
tc-P1:自启动权限设置关闭后,手机关机重启,轨迹上报存活状态验证(Android/HarmonyOS)
pc:适用系统/品牌:Android(小米/华为/OPPO/vivo)、HarmonyOS(华为)
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、电池设置(不允许优化)、省电模式(均衡模式);(避免因权限问题影响轨迹上报)
3. 进入手机设置,关闭APP自启动权限(路径:
- 小米:设置 > 应用设置 > 权限管理 > 自启动管理 > 关闭;
- 华为:设置 > 应用 > 权限管理 > 自启动 > 关闭;
- OPPO:设置 > 应用管理 > 权限 > 自启动 > 关闭;
- vivo:设置 > 应用与权限 > 权限管理 > 自启动 > 关闭;
- HarmonyOS(华为):设置 > 应用 > 权限 > 自启动 > 关闭)
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、电池设置(不允许优化)、省电模式(均衡模式);(避免因权限问题影响轨迹上报)
3. 进入手机设置,关闭APP自启动权限(路径:
- 小米:设置 > 应用设置 > 权限管理 > 自启动管理 > 关闭;
- 华为:设置 > 应用 > 权限管理 > 自启动 > 关闭;
- OPPO:设置 > 应用管理 > 权限 > 自启动 > 关闭;
- vivo:设置 > 应用与权限 > 权限管理 > 自启动 > 关闭;
- HarmonyOS(华为):设置 > 应用 > 权限 > 自启动 > 关闭)
1. 在APP中完成入场打卡后,手机关机重启;
2. 等待30分钟后,重新打开APP,查看移动轨迹->列表
2. 等待30分钟后,重新打开APP,查看移动轨迹->列表
轨迹记录显示无轨迹30分钟(11:00-11:30移动考勤APP程序已被关闭),无等待的30分钟的轨迹数据/或者查看数据库核对
tc-P1:电池优化设置,不允许优化,轨迹上报存活状态验证(Android/HarmonyOS)
pc:适用系统/品牌:Android(小米/华为/OPPO/vivo)、HarmonyOS(华为)
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、省电模式(均衡模式);(避免因权限问题影响轨迹上报)
3. 进入手机设置,将APP设置为“不允许电池优化”(路径:
- 小米:设置 > 省电与电池 > 电池优化 > 选择APP > 无限制;
- 华为:设置 > 电池 > 电池优化 > 选择APP > 不优化;
- OPPO:设置 > 电池 > 电池优化 > 选择APP > 不优化;
- vivo:设置 > 电池 > 后台高耗电 > 选择APP > 允许后台运行;
- HarmonyOS(华为):设置 > 电池 > 电池优化 > 选择APP > 不优化)
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、省电模式(均衡模式);(避免因权限问题影响轨迹上报)
3. 进入手机设置,将APP设置为“不允许电池优化”(路径:
- 小米:设置 > 省电与电池 > 电池优化 > 选择APP > 无限制;
- 华为:设置 > 电池 > 电池优化 > 选择APP > 不优化;
- OPPO:设置 > 电池 > 电池优化 > 选择APP > 不优化;
- vivo:设置 > 电池 > 后台高耗电 > 选择APP > 允许后台运行;
- HarmonyOS(华为):设置 > 电池 > 电池优化 > 选择APP > 不优化)
1. 在APP中完成入场打卡并离开页面(切换至后台);
2. 等待30分钟后,重新打开APP,查看移动轨迹
2. 等待30分钟后,重新打开APP,查看移动轨迹
点击最新的轨迹点,查看内容包含等待的30分钟的定位数据(定位地址正确、时间段包含等待的30分钟)
3.点击“列表”
显示的最新轨迹记录,包含等待的30分钟的轨迹数据/或者查看数据库核对
tc-P1:电池优化设置,APP被优化,应用后台运行,轨迹上报存活状态验证(Android/HarmonyOS)
pc:适用系统/品牌:Android(小米/华为/OPPO/vivo)、HarmonyOS(华为)
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、省电模式(均衡模式);(避免因权限问题影响轨迹上报)
3. 进入手机设置,将APP设置为“允许电池优化”(路径:
- 小米:设置 > 省电与电池 > 电池优化 > 选择APP > 无限制(注:“无限制”即允许优化);
- 华为:设置 > 电池 > 电池优化 > 选择APP > 优化(默认选项);
- OPPO:设置 > 电池 > 电池优化 > 选择APP > 优化;
- vivo:设置 > 电池 > 后台高耗电 > 选择APP > 不允许后台运行(注:“不允许后台运行”即允许优化限制);
- HarmonyOS(华为):设置 > 电池 > 电池优化 > 选择APP > 优化)。
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、省电模式(均衡模式);(避免因权限问题影响轨迹上报)
3. 进入手机设置,将APP设置为“允许电池优化”(路径:
- 小米:设置 > 省电与电池 > 电池优化 > 选择APP > 无限制(注:“无限制”即允许优化);
- 华为:设置 > 电池 > 电池优化 > 选择APP > 优化(默认选项);
- OPPO:设置 > 电池 > 电池优化 > 选择APP > 优化;
- vivo:设置 > 电池 > 后台高耗电 > 选择APP > 不允许后台运行(注:“不允许后台运行”即允许优化限制);
- HarmonyOS(华为):设置 > 电池 > 电池优化 > 选择APP > 优化)。
1. 在APP中完成入场打卡并离开页面(切换至后台);
2. 等待30分钟后,重新打开APP,查看移动轨迹
2. 等待30分钟后,重新打开APP,查看移动轨迹
点击最新的轨迹点,查看内容包含等待的30分钟的定位数据(定位地址正确、时间段包含等待的30分钟)
3.点击“列表”
显示的最新轨迹记录,包含等待的30分钟的轨迹数据/或者查看数据库核对
tc-P1:电池优化设置,APP被优化,杀掉APP应用程序,轨迹上报存活状态验证(Android/HarmonyOS)
pc:适用系统/品牌:Android(小米/华为/OPPO/vivo)、HarmonyOS(华为)
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、省电模式(均衡模式);(避免因权限问题影响轨迹上报)
3. 进入手机设置,将APP设置为“允许电池优化”(路径:
- 小米:设置 > 省电与电池 > 电池优化 > 选择APP > 无限制(注:“无限制”即允许优化);
- 华为:设置 > 电池 > 电池优化 > 选择APP > 优化(默认选项);
- OPPO:设置 > 电池 > 电池优化 > 选择APP > 优化;
- vivo:设置 > 电池 > 后台高耗电 > 选择APP > 不允许后台运行(注:“不允许后台运行”即允许优化限制);
- HarmonyOS(华为):设置 > 电池 > 电池优化 > 选择APP > 优化)。
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、省电模式(均衡模式);(避免因权限问题影响轨迹上报)
3. 进入手机设置,将APP设置为“允许电池优化”(路径:
- 小米:设置 > 省电与电池 > 电池优化 > 选择APP > 无限制(注:“无限制”即允许优化);
- 华为:设置 > 电池 > 电池优化 > 选择APP > 优化(默认选项);
- OPPO:设置 > 电池 > 电池优化 > 选择APP > 优化;
- vivo:设置 > 电池 > 后台高耗电 > 选择APP > 不允许后台运行(注:“不允许后台运行”即允许优化限制);
- HarmonyOS(华为):设置 > 电池 > 电池优化 > 选择APP > 优化)。
1. 在APP中完成入场打卡后,杀掉APP应用程序;
2. 等待30分钟后,重新打开APP,查看移动轨迹->列表
2. 等待30分钟后,重新打开APP,查看移动轨迹->列表
轨迹记录显示无轨迹30分钟(11:00-11:30移动考勤APP程序已被关闭),无等待的30分钟的轨迹数据/或者查看数据库核对
----仅仅是预计结果,也可根据实际来定
----仅仅是预计结果,也可根据实际来定
tc-P1:电池优化设置,APP被优化,手机关机重启,轨迹上报存活状态验证(Android/HarmonyOS)
pc:适用系统/品牌:Android(小米/华为/OPPO/vivo)、HarmonyOS(华为)
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、省电模式(均衡模式);(避免因权限问题影响轨迹上报)
3. 进入手机设置,将APP设置为“允许电池优化”(路径:
- 小米:设置 > 省电与电池 > 电池优化 > 选择APP > 无限制(注:“无限制”即允许优化);
- 华为:设置 > 电池 > 电池优化 > 选择APP > 优化(默认选项);
- OPPO:设置 > 电池 > 电池优化 > 选择APP > 优化;
- vivo:设置 > 电池 > 后台高耗电 > 选择APP > 不允许后台运行(注:“不允许后台运行”即允许优化限制);
- HarmonyOS(华为):设置 > 电池 > 电池优化 > 选择APP > 优化)。
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、省电模式(均衡模式);(避免因权限问题影响轨迹上报)
3. 进入手机设置,将APP设置为“允许电池优化”(路径:
- 小米:设置 > 省电与电池 > 电池优化 > 选择APP > 无限制(注:“无限制”即允许优化);
- 华为:设置 > 电池 > 电池优化 > 选择APP > 优化(默认选项);
- OPPO:设置 > 电池 > 电池优化 > 选择APP > 优化;
- vivo:设置 > 电池 > 后台高耗电 > 选择APP > 不允许后台运行(注:“不允许后台运行”即允许优化限制);
- HarmonyOS(华为):设置 > 电池 > 电池优化 > 选择APP > 优化)。
1. 在APP中完成入场打卡后,并手机关机重启;
2. 等待30分钟后,重新打开APP,查看移动轨迹->列表
2. 等待30分钟后,重新打开APP,查看移动轨迹->列表
轨迹记录显示无轨迹30分钟(11:00-11:30移动考勤APP程序已被关闭),无等待的30分钟的轨迹数据/或者查看数据库核对
----仅仅是预计结果,也可根据实际来定
----仅仅是预计结果,也可根据实际来定
tc-P1:省电模式选择(低电量模式/省电模式/超级省电)下,应用后台运行,APP轨迹上报存活状态验证(Android/HarmonyOS/iOS各品牌)
pc:适用系统/品牌:Android(小米/华为/OPPO/vivo)、HarmonyOS(华为)、iOS(苹果)
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、电池设置(不允许优化)、相机权限;(避免因权限问题影响轨迹上报)
3. 进入手机设置,开启省电模式/低电量模式(路径:
- iOS:设置 > 电池 > 低电量模式 > 开启;
- 小米:设置 > 省电与电池 > 省电模式 > 开启;
- 华为:设置 > 电池 > 省电模式 > 开启;
- OPPO:设置 > 电池 > 省电模式 > 开启;
- vivo:设置 > 电池 > 省电模式 > 开启)。
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、电池设置(不允许优化)、相机权限;(避免因权限问题影响轨迹上报)
3. 进入手机设置,开启省电模式/低电量模式(路径:
- iOS:设置 > 电池 > 低电量模式 > 开启;
- 小米:设置 > 省电与电池 > 省电模式 > 开启;
- 华为:设置 > 电池 > 省电模式 > 开启;
- OPPO:设置 > 电池 > 省电模式 > 开启;
- vivo:设置 > 电池 > 省电模式 > 开启)。
1. 在省电模式/低电量模式下,进入APP“考勤打卡”页面;
2. 尝试拍照打卡并提交并离开页面(切换至后台);
2. 尝试拍照打卡并提交并离开页面(切换至后台);
打卡拍照功能正常调用相机,无黑屏或崩溃
3.等待30分钟,重新打开APP,查看移动轨迹,查看轨迹上报是否正常
点击最新的轨迹点,查看内容包含等待的30分钟的定位数据(定位地址正确、时间段包含等待的30分钟)
4.点击“列表”
显示的最新轨迹记录,包含等待的30分钟的轨迹数据/或者查看数据库核对
tc-P1:省电模式选择(低电量模式/省电模式/超级省电)下,杀掉APP应用程序,APP轨迹上报存活状态验证(Android/HarmonyOS/iOS各品牌)
pc:适用系统/品牌:Android(小米/华为/OPPO/vivo)、HarmonyOS(华为)、iOS(苹果)
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、电池设置(不允许优化)、相机权限;(避免因权限问题影响轨迹上报)
3. 进入手机设置,开启省电模式/低电量模式(路径:
- iOS:设置 > 电池 > 低电量模式 > 开启;
- 小米:设置 > 省电与电池 > 省电模式 > 开启;
- 华为:设置 > 电池 > 省电模式 > 开启;
- OPPO:设置 > 电池 > 省电模式 > 开启;
- vivo:设置 > 电池 > 省电模式 > 开启)。
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、电池设置(不允许优化)、相机权限;(避免因权限问题影响轨迹上报)
3. 进入手机设置,开启省电模式/低电量模式(路径:
- iOS:设置 > 电池 > 低电量模式 > 开启;
- 小米:设置 > 省电与电池 > 省电模式 > 开启;
- 华为:设置 > 电池 > 省电模式 > 开启;
- OPPO:设置 > 电池 > 省电模式 > 开启;
- vivo:设置 > 电池 > 省电模式 > 开启)。
1. 在APP中完成入场打卡后,杀掉APP应用程序;
2. 等待30分钟后,重新打开APP,查看移动轨迹->列表
2. 等待30分钟后,重新打开APP,查看移动轨迹->列表
轨迹记录显示无轨迹30分钟(11:00-11:30移动考勤APP程序已被关闭),无等待的30分钟的轨迹数据/或者查看数据库核对
----仅仅是预计结果,也可根据实际来定
----仅仅是预计结果,也可根据实际来定
tc-P1:省电模式选择(低电量模式/省电模式/超级省电)下,手机关机重启,APP轨迹上报存活状态验证(Android/HarmonyOS/iOS各品牌)
pc:适用系统/品牌:Android(小米/华为/OPPO/vivo)、HarmonyOS(华为)、iOS(苹果)
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、电池设置(不允许优化)、相机权限;(避免因权限问题影响轨迹上报)
3. 进入手机设置,开启省电模式/低电量模式(路径:
- iOS:设置 > 电池 > 低电量模式 > 开启;
- 小米:设置 > 省电与电池 > 省电模式 > 开启;
- 华为:设置 > 电池 > 省电模式 > 开启;
- OPPO:设置 > 电池 > 省电模式 > 开启;
- vivo:设置 > 电池 > 省电模式 > 开启)。
1. 手机已安装APP并登录;
2. 手机授予APP定位权限、电池设置(不允许优化)、相机权限;(避免因权限问题影响轨迹上报)
3. 进入手机设置,开启省电模式/低电量模式(路径:
- iOS:设置 > 电池 > 低电量模式 > 开启;
- 小米:设置 > 省电与电池 > 省电模式 > 开启;
- 华为:设置 > 电池 > 省电模式 > 开启;
- OPPO:设置 > 电池 > 省电模式 > 开启;
- vivo:设置 > 电池 > 省电模式 > 开启)。
1. 在APP中完成入场打卡后,并手机关机重启;
2. 等待30分钟后,重新打开APP,查看移动轨迹->列表
2. 等待30分钟后,重新打开APP,查看移动轨迹->列表
轨迹记录显示无轨迹30分钟(11:00-11:30移动考勤APP程序已被关闭),无等待的30分钟的轨迹数据/或者查看数据库核对
----仅仅是预计结果,也可根据实际来定
----仅仅是预计结果,也可根据实际来定
界面兼容性
tc-P2:【考勤打卡】界面元素布局兼容性(Android/HarmonyOS/iOS各品牌)
pc:适用系统/品牌:Android(小米/华为/OPPO/vivo)、HarmonyOS(华为)、iOS(苹果)
1. 手机已安装APP并登录;
2.使用不同设备,查看考勤打卡界面
1. 手机已安装APP并登录;
2.使用不同设备,查看考勤打卡界面
用户名称、班组/部门名称、头像均正常显示且无遮挡
考勤规则入口(如有)位置合理,点击区域足够
显示管理:字体大小、字体类型
横竖屏配置:是否支持横竖屏自适应处理
tc-P2:【考勤记录】界面元素布局兼容性(Android/HarmonyOS/iOS各品牌)
pc:适用系统/品牌:Android(小米/华为/OPPO/vivo)、HarmonyOS(华为)、iOS(苹果)
1. 手机已安装APP并登录;
2.使用不同设备,查看考勤记录界面
1. 手机已安装APP并登录;
2.使用不同设备,查看考勤记录界面
显示管理:字体大小、字体类型
UI结构、对话框基于分辨率、屏幕大小进行适配
横竖屏配置:是否支持横竖屏自适应处理
tc-P2:【移动轨迹】界面元素布局兼容性(Android/HarmonyOS/iOS各品牌)
pc:适用系统/品牌:Android(小米/华为/OPPO/vivo)、HarmonyOS(华为)、iOS(苹果)
1. 手机已安装APP并登录;
2.使用不同设备,查看考勤打卡界面
1. 手机已安装APP并登录;
2.使用不同设备,查看考勤打卡界面
UI结构、对话框基于分辨率、屏幕大小进行适配
显示管理:字体大小、字体类型
横竖屏配置:是否支持横竖屏自适应处理
tc-P2:【员工分布】界面元素布局兼容性(Android/HarmonyOS/iOS各品牌)
pc:适用系统/品牌:Android(小米/华为/OPPO/vivo)、HarmonyOS(华为)、iOS(苹果)
1. 手机已安装APP并登录;
2.使用不同设备,查看员工分布界面
1. 手机已安装APP并登录;
2.使用不同设备,查看员工分布界面
UI结构、对话框基于分辨率、屏幕大小进行适配
显示管理:字体大小、字体类型
横竖屏配置:是否支持横竖屏自适应处理
tc-P2:【工作路线】界面元素布局兼容性(Android/HarmonyOS/iOS各品牌)
pc:适用系统/品牌:Android(小米/华为/OPPO/vivo)、HarmonyOS(华为)、iOS(苹果)
1. 手机已安装APP并登录;
2.使用不同设备,查看工作路线界面
1. 手机已安装APP并登录;
2.使用不同设备,查看工作路线界面
UI结构、对话框基于分辨率、屏幕大小进行适配
显示管理:字体大小、字体类型
横竖屏配置:是否支持横竖屏自适应处理
tc-P2:【我的】界面元素布局兼容性(Android/HarmonyOS/iOS各品牌)
pc:适用系统/品牌:Android(小米/华为/OPPO/vivo)、HarmonyOS(华为)、iOS(苹果)
1. 手机已安装APP并登录;
2.使用不同设备,查看我的界面
1. 手机已安装APP并登录;
2.使用不同设备,查看我的界面
UI结构、对话框基于分辨率、屏幕大小进行适配
横竖屏配置:是否支持横竖屏自适应处理
网络与流量
tc-P2:【考勤打卡】无网络状态显示
pc: 用户已登录APP
设备处于无网络状态
设备处于无网络状态
进入考勤打卡界面
检查用户信息和考勤规则入口的显示
用户名称、班组/部门名称显示为本地缓存数据或“--”
考勤规则入口根据缓存策略显示(如有缓存则显示,否则隐藏)
tc-P3:【考勤打卡】弱网环境下进行考勤打卡
pc:用户处于弱网环境(如2G网络)。
点击“入场打卡”按钮。
打卡成功/或提示网络不佳,请稍后再试
tc-P3:【轨迹上报】弱网环境下开启定位
pc:用户处于弱网环境(如2G网络)。
点击“开启定位”按钮。
按钮仍切换为“终止定位”,但提示:“轨迹上报开启,网络不佳可能导致延迟”。
后台尝试缓存轨迹数据,待网络恢复后同步。
后台尝试缓存轨迹数据,待网络恢复后同步。
tc-P3:首次启动app的流量是否符合预期
统计手机消耗的流量
tc-P3:验证轨迹上报服务的流量使用是否合理
pc:用户已开启定位
在WiFi和4G环境下分别测试
持续运行轨迹上报1小时
记录流量消耗(通过Android流量统计或抓包工具)
持续运行轨迹上报1小时
记录流量消耗(通过Android流量统计或抓包工具)
流量消耗符合预期(如<1MB/小时)
正常上报一天的轨迹
统计手机消耗的流量
tc-P2:验证APP在WiFi网络下,APP操作的流畅性
tc-P2:验证APP在手机4G网络下,APP操作的流畅性
tc-P2:验证APP在手机5G网络下,APP操作的流畅性
tc-P2:验证WiFi ↔ 移动数据切换,轨迹上报是否中断,数据是否丢失
开启轨迹上报服务,初始连接WiFi
关闭WiFi,自动切换到4G/5G
观察上报是否中断,数据是否丢失
重新打开WiFi,检查是否自动切换回WiFi并继续上报
网络切换时服务不中断
无数据丢失,上报保持连续
中断测试
tc-P3:【轨迹上报】权限设置为自启动,手动锁屏中断,后台服务保活验证
pc:用户已开启定位、权限设置为自启动(正在上报轨迹)
【锁屏中断】:停留在程序操作界面进行锁屏,锁屏30分钟
【轨迹上报】后台服务正常,会持续上报轨迹记录。
tc-P3:【轨迹上报】权限设置为自启动,前后台切换,后台服务保活验证
pc:用户已开启定位、权限设置为自启动(正在上报轨迹)
【前后台切换】:停留在程序操作界面,通过home键,进行程序的前后台切换,后台运行30分钟
【轨迹上报】后台服务正常,会持续上报轨迹记录。
tc-P3:【轨迹上报】权限设置为自启动,手动关机中断,后台服务保活验证
pc:用户已开启定位、权限设置为自启动(正在上报轨迹)
【关机异常中断】:停留在程序操作界面,通过关机进行程序的中段,关机30分钟
【轨迹上报】后台服务中断,不会持续上报轨迹记录。
tc-P3:【轨迹上报】权限设置为自启动,低电量自动关机中断,后台服务保活验证
pc:用户已开启定位、权限设置为自启动(正在上报轨迹)
【关机异常中断】:停留在程序操作界面,低电量自动关机进行程序的中段,关机30分钟
【轨迹上报】后台服务中断,不会持续上报轨迹记录。
tc-P3:【轨迹上报】权限设置为自启动,退出应用程序,后台服务保活验证
pc:用户已开启定位、权限设置为自启动(正在上报轨迹)
【退出应用中断】:停留在程序操作界面,通过手动杀掉应用程序,后台运行30分钟
【轨迹上报】后台服务正常,会持续上报轨迹记录。
tc-P3:【轨迹上报】权限设置为自启动,非WiFi下来电场景中断,后台服务保活验证
pc:用户已开启定位、权限设置为自启动(正在上报轨迹)
【来电异常中断】:关闭手机WiFi,停留在程序操作界面,通过突然来电,进行程序的中段,后台运行30分钟
【轨迹上报】后台服务正常,会持续上报轨迹记录。
tc-P3:【轨迹上报】权限设置为自启动,退出登录中断,后台服务保活验证
pc:用户已开启定位、权限设置为自启动(正在上报轨迹)
【退出登录中断】:停留在程序操作界面,通过退出登录进行程序的中段
token失效,【轨迹上报】后台服务不会持续上报轨迹记录。
tc-P3:【轨迹上报】权限设置为自启动,网络中断到网络恢复场景,恢复后继续上报
pc:用户已开启定位、权限设置为自启动(正在上报轨迹)
【网络中断】:停留在程序操作界面进行关闭手机网络
后台尝试缓存轨迹数据,待网络恢复后同步。
【网络恢复】:停留在程序操作界面进行打开手机网络
继续轨迹上报
tc-P3:【轨迹上报】权限设置为自启动,开启飞行模式到关闭飞行模式场景,恢复后继续上报
pc:用户已开启定位、权限设置为自启动(正在上报轨迹)
【开启飞行模式】:停留在程序操作界面进行开启飞行模式
后台尝试缓存轨迹数据,待网络恢复后同步。
【关闭飞行模式】:停留在程序操作界面进行关闭飞行模式
继续轨迹上报
tc-P3:【轨迹上报】手机关闭GPS到开启GPS场景,开启后继续上报
pc:用户已开启定位、权限设置为自启动(正在上报轨迹)
【关闭GPS】:停留在程序操作界面进行关闭手机GPS
中断轨迹上报
【GPS恢复】:停留在程序操作界面进行打开手机GPS
继续轨迹上报
tc-P3:【轨迹上报】省电模式对轨迹上报的影响
pc:用户已开启定位、权限设置为自启动(正在上报轨迹)
【省电模式】:停留在程序操作界面
继续轨迹上报
【省电模式】:APP程序切换到后台
继续轨迹上报
tc-P3:【轨迹上报】每次服务中断恢复后,检查轨迹数据是否有丢失
网络中断时,刚好是要上报一次的时间点,轨迹数据未上报,网络恢复后
未上报的轨迹数据会重新上报
如果恢复后轨迹数据出现重复上报
后端会不会过滤掉,还是重复保存
tc-P3:【轨迹上报】同时运行多个资源密集型应用,检查轨迹上报服务是否保持运行
pc:用户已开启定位、权限设置为自启动(正在上报轨迹)
用户打开微信、钉钉、抖音、高德地图、游戏(王者、和平精英等)
安装与升级
tc-P2:验证APP升级后用户数据完整性
从应用商店或安装包执行覆盖升级,重新打开APP
登录状态保持
权限设置保持不变
权限设置保持不变
tc-P2:验证APP可跨版本升级
pc:当前安装版本为v2.0
最新版本为v2.2(跳过v2.1)
最新版本为v2.2(跳过v2.1)
直接下载v2.2安装包覆盖安装
检查APP功能完整性
安装成功且无兼容性报错
数据库结构自动升级(如有变更)
历史数据可正常查询
tc-P2:验证APP检查更新功能
pc:当前安装版本为v2.1
最新版本为v2.2
网络连接正常
最新版本为v2.2
网络连接正常
进入检查更新模块,手动触发检查更新
已有最新版:显示“检查到最新版本(v2.2)是否立即更新”
点击立即更新
APP自动更新,更新完成后,登录状态保持
权限设置保持不变
权限设置保持不变
再次进入检查更新模块,手动触发检查更新
已是最新版:显示“当前已是最新版本(v2.2)”
tc-P2:验证APP卸载后,可重新安装
pc:当前已安装APP版本
手动卸载APP
卸装完成,手机无应用
重新从应用商城进行安装/或下载安装包进行安装
重新安装后,APP正常使用
tc-P2:验证旧版本APP访问新服务端API
pc:当前安装版本为v2.1
最新版本为v2.2
网络连接正常
最新版本为v2.2
网络连接正常
v2.1版本APP访问v2.2服务端时
非新增功能,都正常使用
性能测试
防篡改测试
tc-P2:使用修改定位的软件来篡改手机定位,是否可以进行考勤打卡
安卓机覆盖到定位精灵、虚拟定位、爱思助手等软件
tc-P2:使用修改定位的软件来篡改手机定位,是否影响轨迹上报的轨迹
安卓机覆盖到定位精灵、虚拟定位、爱思助手等软件
安全软件与杀毒软件兼容性测试
tc-P2:APP安装后首次使用360安全扫描,不会被报恶意软件,不会被清理
安装APP并启动轨迹上报服务
手动运行安全软件(360安全卫士)全盘扫描
检查是否被标记为“风险应用”或“可疑行为”
手动运行安全软件(360安全卫士)全盘扫描
检查是否被标记为“风险应用”或“可疑行为”
不被误报为恶意软件
无强制关闭或清理提示
tc-P2:APP安装后首次使用腾讯手机管家进行扫描,不会被报恶意软件,不会被清理
安装APP并启动轨迹上报服务
手动运行安全软件(360安全卫士)全盘扫描
检查是否被标记为“风险应用”或“可疑行为”
手动运行安全软件(360安全卫士)全盘扫描
检查是否被标记为“风险应用”或“可疑行为”
不被误报为恶意软件
无强制关闭或清理提示
tc-P2:【轨迹上报】后台服务被安全软件监控,不会被限制
启动轨迹上报服务并进入后台
打开安全软件的“后台行为监控”功能(如腾讯手机管家的“流量监控”)
观察是否被判定为“高耗电”或“异常后台活动”
不被错误归类为“恶意保活”
如有限制,应引导用户添加白名单
0 条评论
下一页
为你推荐
查看更多