测试平台项目总结
项目介绍
为海尔开发的一个对项目进行测试的一个PC端
使用的框架是vue-element-admin,一个别人写的现成的框架,vue和element-ui的结合使用
这个框架里面的插件的使用都有封装,echarts,clipboard等,适合大型项目的开发,小型项目可以参考,里面有很多用不到的,容易代码冗余。
用户端:
项目管理(每个需要测试的项目)
测试计划(隶属于项目管理,项目管理->测试计划)
测试任务(隶属于测试计划,项目管理->测试计划->测试任务)
测试用例(隶属于项目管理,项目管理->测试用例)
测试环境
软件评测
知识库
角色管理
管理端:
测试用例
软件评测
知识库
信息管理
权限管理
参与人员
伊利 马海强 贺茂峰 罗德玉 赵阳
经验总结
项目要做的东西还是很多的,而且功能环环相扣,有很多技术都是现学的,在这个项目中确实学到了不少的东西。当然做的时候出现的问题也很多,主要还是自己的经验和技术不够。 还有在思考问题的时候,在某个地方卡住了,可以找人帮忙提供一下思路,有时候自己在讲解自己的解题步骤时,就能发现自己哪里出问题了。
印象深刻的技术点分享
全选
有一个功能的要求是,可以选中table的某一条的数据,也可以选中当前页的所有数据,后来又加了一个要求,可以全选。
但是数据是接口分页获取的,不可能一次性拿到所有的数据,当初写的时候很头疼,不知道怎么下手。
要实现的几个功能方面:
1.全选
2.全不选
3.全选了之后只取消几个不要的数据
4.没有点击全选,手动选中想要的数据
5.手动点击了所有的数据,实现了全选或者全不选
6.控制全选的checkbox的样式
1.全不选,为空
2.全选,为对勾
3.既不是全选也不是全不选,样式为一条横杠
难点就是怎么实现"既不是全选也不是全不选"这个功能。当初写的时候总是想通过保存的选中的数据来实现,但是写下来总是有问题。
所以最后的方案是,通过能完全掌握的几条数据下手,比如,我们全选了,只想取消某几条不要的数据,那我们就只保存这几条不要的数据,通过这几条数据来控制页面显示的数据。而全不选的时候就保存手动选中的那几条数据,显示出来就行。
iframe嵌入页面携带cookie
这个功能的要求是,把另一个项目的某些页面嵌入测试平台中。要求携带cookie的值。
这里的cookie需要设置domain。
domain:cookie对于哪个域是有效的。所有向该域发送的请求中都会包含这个cookie信息。这个值可以包含子域(如:yq.aliyun.com),也可以不包含它(如:.aliyun.com,则对于aliyun.com的所有子域都有效).
这个cookie的设置是在服务端设置的,前端只需要在拦截器里添加一条axios.defaults.withCredentials = true,就可以携带cookie了。请求接口的时候浏览器会自动保存这条cookie。
如上面所解释的,Cookie是不可以跨域名的,隐私安全机制禁止网站非法获取其他网站的Cookie。所以我们要把domain设置为.abc.com,那我们请求的域名必须是xxx.abc.com,否则即使手动修改这个domain,在浏览器中也是保存不上的。
那么我们本地测试的时候往往请求的域名不是我们想要的,该怎么测试呢?
可以安装一个火狐的插件(web_developer-2.0.5-an+fx.api),修改cookie。