你认为测试工程师有哪些必备技能
2、具有逆向思维的能力
3、具有敏锐的洞察力和锲而不舍的精神
4、具有发散性思维的能力
5、擅于同软件开发工程师沟通
沟通的内容主要包括以下 4 方面:
①讨论软件的需求与设计
②报告好的软件测试结果
③不仅要报告缺陷,而且要学会如何帮助软件开发工程师定位缺陷
④讨论一些与工作无关的事情
6、擅于同领导沟通
7、掌握一些自动化软件测试工具和脚本
8、擅于学习
9、提高自己的表达能力
10、了解业务知识
11、培养对软件测试的兴趣
12、追求完美
综合以上 12 点阐述,如图 。
了解后台开发语言(c或其他高级语言),后台应用一般部署在支持多用户、多任务、多线程的linux或unix操作系统;
熟悉其中一种数据库,市面上有mysql、db2、oracle,目前大型的关系型数据库是Oracle,熟练掌握常用的数据操作语言 (DML-增删改查) 和 数据定义语言 (DDL-创建新表、索引等);
熟练掌握linux操作命令,安装第三方软件、修改配置文件、备份数据库、恢复备份等;
熟悉被测项目业务逻辑,功能测试的重中之重;
整理测试范围,熟悉案例设计方法:等价类、边界值、错误预估法等;
思路清晰、做事有条理。
接口测试用于单元测试阶段,比如基金--主机,双方有可能不在一个地方,所以集成测试之前首先得自测,基金系统的正常功能全部跑通,然后申请一起联测。
基金系统自己配挡板,然后按照自己系统的通讯方式,发送与接收报文;
接口测试用于集成测试阶段,比如基金--主机,这是2个不同的系统,系统间要有数据交互,就需要双方约定数据传输格式,确保账务正确;
首先查看接口文档,确定双方通讯方式,找到文档中的请求报文头,组报文然后双方公司配合测试,接收报文后,查看返回数据是否正确。
3、性能测试:
目前性能测试针对有压力的系统测,一般基于使用挡板测试;
熟练使用一种性能测试工具如:(Loadrunner-商业,Jmeter-开源等);
熟练使用一种脚本语言,目前工具默认的是c语言,使用者自行选择脚本协议http或socket协议;
会写存储过程:性能测试势必是基于有大量用户使用的系统做,对于大量数据我们不可能自己手工录数据,这时候就会牵扯到一向技能:首先找出相关联的表,然后写存储过程造数据。重要重要重要!!!
会使用nmon监控后台应用和数据库服务器资源使用,主要为磁盘读写、cpu、内存的使用情况;
会利用oracle快照生成的报告,查看各条sql的行时间以及前台和后台应用的commit操作占用的资源;
熟练使用自动化测试框架:selenium+python+firefox;
善于使用firefox自带的selenium ide +firefox页面查看元素找到各种id、name等;
目前还在学习中,比如今天就遇到个大麻烦
selenium+python实现,python脚本
1、在A界面单个登录脚本直接赋值登录用户名、密码,注释掉click语句,执行时停留在A界面;
2、在A界面,参数化登录用户名、密码,用for语句,打开浏览器在for语句里之行,注释掉登录语句,执行脚本时,自动转到B界面,这是为什么呢?百思不得其解;
目前已解决啦,为了确保注释没问题,请用'''代码'''注释哦。
3、还遇到个问题,密码不能参数化,只能写死,否则系统自动默认登录成功;