一般测试人员会有三个职责
1. 测试环境安装
准备测试数据(一般都需要脚本化)
准备测试代码(白盒测试需要写不少代码)
2. 功能测试
灰盒,黑盒
主要是测试用例。维度有覆盖率,边界值等。
3. 性能测试
根据系统的需求。系统的吞吐率,压测下的系统负荷。压测长时间下的功能是否依旧正常。
我眼中一个好的测试人员的考量方面
1. 对业务的了解,能有独立的想法和改良性建议(可测性,流程,交互,或者更深的业务思考等)
2. 测试的方法论总结,还有coding
3. 对技术的热爱,还有工具化、自动化的文化的认可和热衷
4. 一般来说测试人员都是对系统最了解的人。一定要有自己独立的看法。
5. 对业务和公司平台了解,另外可以通过人脉协调不同部门一起顺畅做事。
测试工具介绍
(留意1,2;3,4主要是开眼界)
1. web方面:
功能:Silktest,按键精灵,Web的功能测试,有一个IETest的,可以模拟多个IE版本。
web性能测试Webload,Loadrunner(我好几年前用的,可能信息已经过时了)
2. 自己APP的测试:
有些后台系统需要测试,一般都需要自己写脚本,另外,如果对方是非文本协议,需要开发者提供发包工具测试。基于文本的可以使用比较通用的socket发包工具(没有就叫开发者提供)。
简单脚本可以shell,复杂脚本需要python,ruby或者其他的一些动态语言。或者用C之类的,反正使用你最熟悉的东西。
3. 系统测试(一般是运维人员会使用到,放到这里只是让大家了解一下):
sysbench 测试cpu,硬盘IO速度,内存速度,Mutex/线程切换速度,DB等
iperf 网速测试
4. 平台测试
一般的比较活跃的开源工具,比如redis,memcached等,都会有自带的benchmark测试工具。
查看系统的常用命令
netstat -nlp
iostat -x 1
iostat -c 1
vmstat -n 1
du -h
lsof -p 1234,看进程用了多少个句柄,一般来说打开了多少个连接直接在这里可以看到
top -p 1234
top -b -n 1|
重要社区
51testing 国外就是 QAforum