1、下载文件
2、文件名截取
3、获取链接下载到本地
4、自动打开文件进行预览
5、统计文件行数
1、进行接口自动化测试的时候完成了文件上传的操作后,想着实现文件下载接口的操作。
2、文件下载在界面上的操作目前是,在列表中点击【导出】按钮,选择需要的导出数据后,文件会自动下载。
3、下载到本地后,就可以手动打开文件查看数据和列表数据进行对比,验证是否符合预期。
4、痛点:
4.1、文件需要每次在界面点击下载
4.2、文件需要自己手动打开
4.3、文件行数需要手工验证
1、从接口层面上,系统是通过请求得到一个下载链接。
2、进行接口请求,使用已经封装好的方法,只需要创建map对象往里添加参数,然后把参数、接口地址、账号传给另一个方法调用并接收返回信息,最后得到下载链接。
1、其实得到下载链接后,可以直接进行下载文件到本地的操作,但是每次都需要将链接中的文件名手动复制到下载文件的方法中,这样太繁琐了。
2、需要将得到的下载链接把文件名截取出来,放在保存的本地文件路径中引用。
3、使用substring();进行截取,注意索引从0开始。
1、得到截取的文件名后,就可以进行下载文件到本地的操作了。
2、将截取的字符串变量引用到本地文件路径中。
3、执行方法后,在文件夹中看到下载的文件,成功打开后和界面数据进行验证即可。
1、下载文件成功后,每次还需要去文件夹手动打开,于是就想是不是可以实现下载文件后自动打开文件预览的操作。
2、于是,就查阅资料,做到了文件下载到本地后自动打开文件预览的操作。
3、该方法需要获取下载链接方法和下载文件到本地的方法执行后才可以执行,因为引用了下载链接的文件名。
4、当然,在调试阶段,运行单个方法时,路径中写固定路径即可。
1、自动打开文件后,需要除了验证数据外,还需要验证文档的行数,常规就是:文档结尾行数减去文档开始行数等于有效行数。
2、但是文档数据大的时候,还需要拉到文档底部,所以想着可以自动统计文档行数。
3、在统计行数的时候,还需要注意空行过滤。
1、该文档实现了,获取下载链接进行截取文件名后,自动下载到本地和自动打开文件以及统计文件行数。
2、后续还将要实现,获取下载链接时传入的行数和文件统计行数做自动校验。