测试基础 参加全省测试竞赛,拿了第一名!

lv · 2023年09月27日 · 最后由 徐汪成 回复于 2023年10月07日 · 4612 次阅读

先放张得奖帅照:

没发文章的这几天,我带领团队,代表公司参加了 “2023 全省网络信息系统软件测试技能竞赛”,和 22 个团队、66 名来自全省的测试小伙伴一起竞赛,最终在团队成员的共同努力下,一举夺得个人第一、团队第二的成绩。

说实话,当时听到这个消息还是比较激动的,总算是不负领导期望,拔得头筹。

在群友的建议下,打算写篇文章好好介绍下这场竞赛,希望能给其他测试小伙伴提供一点启发。

比赛内容

比赛分为两个模块:

首先是理论基础,内容涵盖了数据库知识、测试基础、测试类型和策略、测试设计方法、测试技术知识、软件质量管理、软件编程语言

其次是实操模块,功能测试、接口测试、性能测试、自动化测试等。要求参赛选手能够掌握不同测试类型的测试技术及策略,

熟练使用不同的设计方法设计有效的测试用例等方面的基本技能。同时,要求参赛选手熟悉 Python 编程语言、熟悉 Postman、JMeter 测试工具的运用,以实现功能自动化、接口自动化及性能自动化。

赛前准备

1、阅读比赛要求

拿到这份比赛题型和考察内容时,我花了将近半天时间,仔细阅读,猜测比赛会考哪些知识点,再结合实操模块的要求,以及安装软件清单,如下

大致可以确定比赛要考察的内容了,首先理论题,考察的是知识广度,这里得靠平时的积累,考察范围确实涉及到数据库知识、测试基础、测试类型和策略、测试设计方法、测试技术知识、软件质量管理、软件编程语言等。

实操这块我看到软件列表有 postman 和 jmeter ,母庸质疑会涉及到相关的接口测试和性能测试的考察。

另外还有 selenium 和 pytest 框架,基本确定肯定会考 ui 自动化。

最后功能测试,需要记录缺陷,很明显会给你一个功能,让你测试,找 bug,并记录 bug,这考察的是基本功,不做赘述。

总分=理论题得分 *30%+ 实操题 *70%。

2、发散列举比赛内容

确定好考察方向以后,那就得针对每个方向,发散列举可能会考察的内容。

其中理论知识重点复习一下 python、数据库、测试基础理论等,这些只能靠平时积累,临时恶补,效果不大,而且理论题满分 100 分,只占总分的 30%,应该把重心放在实操环节。

实操环节,接口测试肯定会用到 postman,我仔细回想了一下,postman 能考哪些呢?

无非就是接口编写、设置全局、环境变量、编写断言校验、接口参数关联和引用、批量运行测试集合、数据驱动等等,事实情况果真如我所料,就是考察这些。

那性能考察什么呢?

我猜想肯定会用 jmeter,可考察内容如下:

线程组选取范围:

1) 线程组、2) setUp 线程组、3) tearDown

线程组取样器选取范围:

1) HTTP 请求、2) 调试取样器、3) FTP 请求、4) Java 请求

逻辑控制器选取范围:

1) 事务控制器、2) 循环控制器、3) 交替控制器、4) 仅一次控制器、5) 随机控制器、6) 随机顺序控制器、7) 简单控制器

断言选取范围:

1) 响应断言、2) JSON 断言、3) 大小断言

定时器选取范围:

1) 固定定时器、2) 统一随机定时器、3) 高斯随机定时器、4) 泊松随机定时器、5) 同步定时器

配置元件选取范围:

1) CSV 数据文件设置、2) HTTP 信息头管理器、3) HTTP Cookie 管理器 4) HTTP 缓存管理器、5) HTTP 请求默认值、6) HTTP 授权管理器、7) FTP 默认请求、8) Java 默认请求、9) 随机变量

监听器选取范围:

1) 察看结果树、2) 汇总报告、3) 聚合报告、4) 汇总图、5) 断言结果 6) 图形结果、7) 响应时间图

函数助手选取范围:

1) CSVRead、2) Random、3) RandomDate、4) RandomString、5) time

JMeter 运行选取范围:

1) GUI 运行、2) 非 GUI 运行

执行命令:jmeter -n -t testscript\Baidu.jmx -l testresult\01-reslut.jtl(执行结果文件也可以保存为.cvs 后缀)

在取样器错误后要执行的动作可设置:

继续,启动下一进程循环,停止线程,停止测试,立即停止测试

场景配置虚拟用户数可设置、Ramp-Up 时间 (秒) 可设置、循环次数可设置、调度器可设置、调度器启用 - 持续时间可设置、调度器启用 - 启动延迟可设置、数据驱动、还有一个接口参数关联和引用。我能想到的大概就这么多,考完以后发现性能测试考察内容都在我列举的内容当中。

ui 自动化考察什么呢?

八大定位元素方式、模拟键盘、鼠标操作、等待时间、上传文件、处理截图、pytest 数据驱动、po 模式、复数定位方式等等

结果呢?比赛考察的知识点都是我上面列举的,其中出题人可喜欢 css_selector 这种定位方式了,整个自动化题目大部分定位元素的方式都是这个,特别提醒一下,自动化脚本是出题人提前写好的,你需要在写好的自动化脚本里,按比赛要求编写自己的自动化测试用例,另外提供的自动化脚本是个半成品,有很多坑,需要自己去调试。

3、逐个击破

学习完上面的知识点,我总共用了 2 天时间,上午看了一些理论基础,剩下一天半专攻接口测试、性能测试和自动化测试,基本上都是从头到尾做一遍,由于以上知识点,大部分都是我曾经用过,所以复习起来比较快。

4、百度竞赛真题演练

掌握了竞赛可能会考察的知识点后,那就得实战演练,本次比赛是第一届,于是我就抱着侥幸心理,百度搜了网上关于测试竞赛题目,进行实战。

总结

从竞赛考察的知识点来看,考查比较深,范围也很广泛,基本涵盖了我们测试所接触的东西,这就要求我们平时要多学习,多积累。

另外比赛主要考察了技术和测试两方面,这也体现了新时代的大趋势,对参赛者技术素养要求越来越高,而且这也是我一直提倡的,要做 “业务型测开”,既要懂测试,也要懂技术。

当然了实现这个目标,并非一朝一夕的事情,大家一起努力!!!

共收到 4 条回复 时间 点赞

顶 厉害了

5楼 已删除

为什么没通知我们参加。

=========================
突然想起来,我是外包。

lv 关闭了讨论 11月29日 09:51
lv 重新开启了讨论 11月29日 09:53
lv 关闭了讨论 11月29日 09:53
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册