美文网首页
初探软件测试

初探软件测试

作者: 我叫何家明 | 来源:发表于2021-02-02 01:20 被阅读0次

每个软件工程师其实都应该了解软件测试,合适的软件测试方法可以将bug前置,提升软件质量。这里主要聚焦于辛勤劳动的测试工程师 ,lisa镇楼~

image.png

软件行业发展至今,软件测试已经成为软件工程中不可缺失的一环,演进了很多测试方法论,发展了多个测试平台。其实是最近遇见了一个很可爱的测试妹子,毕竟我也在这个开发行业混了四年了,肯定要有足够的知识来展示自己无可匹敌的魅力并且产生话题。so 赶紧补一波软件测试方面的知识,帮助妹子能快速捕捉到令人叹服的bug,升职加薪~

现状

需求交接后,测试爸爸们就开始设计测试用例了,开发之完毕之后,进入SIT(System Integration Testing)系统集成测试阶段。这时,测试工程师就会用设计好的测试用例来验证功能是否符合预期。一般三个开发配一个测试。这里包括了功能测试和性能测试。

测试阶段

单元测试、SIT、UAT、安全测试、性能测试、回归测试、冒烟测试、灰度测试

测试理论

测试可从书籍或视频中获取,经典黑皮书《软件测试》《软件测试的艺术》《Google软件测试之道》


image.png

文档能力

测试用例

合适的测试用例和测试方法对于测试是极其重要的。

功能测试

最基础的功能测试就是手动点巴点巴,验证流程结果是否符合预期,特殊字符是否有限制,条件是否满足,表单校验的正确性,接口返回是否超时,基础测试,称为level1级别,这都没过,就算是回归不通过,等着吃单吧~

工具

接口测试

postman

前后端必须会的工具呀,只有调过接口才能说是ok。专业的测试人员不仅要会基础的调用接口,并且还要熟练使用批量跑接口以及断言(preRequest和test,需要js语法支持)。

soupUI

支持Groovy脚本扩展

抓包工具

Fiddler

首推的抓包工具,修改request和response测试软件是否合理的处理了各种异常场景,比如对于500、400等返回值的处理,loading是否自动停止。可以拦截request修改入参、拦截response修改返回值,达到测试目的。mac可以用最近免费推出的全平台版本Fiddler Everywhere

Charles茶壶

同样也是很出色的抓包工具

Wireshark

wireshark只能查看封包,而不能修改封包的内容,或者发送封包。wireshark能获取HTTP,也能获取HTTPS,但是不能解密HTTPS,所以wireshark看不懂HTTPS中的内容,总结,如果是处理HTTP,HTTPS 还是用Fiddler, 其他协议比如TCP,UDP 就用wireshark.

chrome调试

了解network的调用链路更好设计合理的用例,发现漏洞。

自研测试平台

根据自家软件特性,一般都会搭建自动化测试平台。上下文参数传递,自动化接口测试。

移动端测试

不仅仅要回web端的测试,还需要对app测试有了解,毕竟前端也是日新月异的。安卓需要了解adb(Android Debug Bridge 安卓连接桥)指令,可以用于安装sdk

Appium

继承于Selenium的一个app测试客户端桌面应用。

chrome

需要移动端的浏览器为chrome内核,通过usb连接电脑和移动设备,并且使用chrome查看移动设备网页的展示效果和html布局样式。

性能测试

Jmeter

基于java开发的GUI 性能测试工具,也支持SDK调用,多线程并发接口调用,定时、专业的观察树图表展示。


image.png

LoadRunner

同著名性能测试框架

自动化测试

Selenium

最流行的 自动化测试框架,支持java和python的sdk。测试行业人员必学。可以打开浏览器驱动,模拟用户进行一整套流程操作,完成UI全自动测试,解放人力,可快速回归测试。此时就需要前端基础,获取xpath来定位元素。 so~前端也是我的强项,可以加强而攻之。

Robot Framework

Robot Framework是用于验收测试和验收测试驱动开发(ATDD)的通用测试自动化框架。 它具有易于使用的表格测试数据语法,并使用关键字驱动的测试方法。 它的测试功能可以通过使用Python或Java实现的测试库进行扩展,用户可以使用与创建测试用例相同的语法,从现有的关键字创建新的更高级别的关键字。

QTP(UTP)

CS端自动测试框架,已经慢慢不使用了

持续集成测试

jenkins

持续交付,自动化测试平台,在DevOps中占大头,当开发提交代码后,就触发出发流水线从而触发自动化测试。

单元测试

一般开发自测或者开发转测试,都需要进行黑盒测试,在功能小单元做好逻辑的头尾对接。

JUnit

经典java单元测试框架

testNG

经典后的经典 java单元测试框架

UnitTest & Pytest

python的单元测试框架,可以配合自动化测试框架联合测试。

数据库能力

有些程序的运行结果是体现在数据库上的,并且还有些是存储过程,那就更依赖数据库了,所以基础的sql能力也是要有的。

how to become 测试经理

毕竟不是这个方向,也只能分析下周围厉害的测试兄弟有什么优秀的特性。

产品owner意识

其实测试就是潜在的用户,如果在测试过程中,交互体验不顺畅,就需要和产品经理、需求分析等进行讨论,是否有更合理的方案,优化产品的易用性。

测试即业务

对业务了如指掌,只有对业务非常了解才能在各种复杂场景中发现异常,并且对于功能改动影响范围有所把握,是否需要回归测试。

人员管理

对的人做对的事,根据每个人对功能模块的熟悉程度来划分测试任务

测试手段

需要定下测试手段和规则,交叉测试就是很好检验是否完成测试的手段,发现别人用例的盲点。

版本测试复盘

每个版本的测试任务完毕后,需要分析这个版本的测试团队整体的good things 和 bad things,并且归档后找出解决方案,并且严格按照标准践行。专业性就体现在有想法并能高效执行,这样才会信服。

联调协作能力

实际测试中,可能会涉及到多个系统,那么就需要分析测试边界,是否从创建表单到表单结束整个生命流程都需要参与

版本控制&项目管理

开发是测试的好弟弟,只有开发完成了,才能启动测试,所以也需要盯紧开发的进度,防止测试时间紧张造成未全面覆盖测试。

方法论

TDD 测试驱动开发 。TDD的原理是在开发功能代码之前,先编写单元测试用例代码,测试代码确定需要编写什么产品代码。

技术

搭建自动化测试平台能力,一般来说自动化测试平台都是jenkins+jmeter可以搞定。

相关文章

  • 初探软件测试

    每个软件工程师其实都应该了解软件测试,合适的软件测试方法可以将bug前置,提升软件质量。这里主要聚焦于辛勤劳动的测...

  • 软件性能测试目录

    软件性能测试Ⅰ 软件性能测试Ⅱ 软件性能测试Ⅲ 软件性能测试Ⅳ 软件性能测试Ⅴ 软件性能测试Ⅵ 软件性能测试Ⅶ 软...

  • 软件测试资料下载、【软件测试】新科海软件测试视频、04【软件测试

    ![软件测试资料下载、【软件测试】新科海软件测试视频、04【软件测试】播布客软件测试系列培训视频、08【软件测试】...

  • 软件测试

    基础篇 软件测试历史 什么是软件测试 软件测试在整个开发过程中的地位 软件测试要素 软件测试类别 软件测试流程、软...

  • CTS问题分析1

    CTS/GTS问题分析1 问题初探 测试命令: run gts -m GtsGmscoreHostTestCase...

  • CTS问题分析5

    CTS/GTS问题分析5 问题初探 测试命令: run cts -m CtsDevicePolicyManager...

  • 软件测试文章收集

    1.软件测试理论概念 软件测试基础 软件测试基础知识大全(上篇) 软件测试基础知识大全(下篇) 软件测试基础学习 ...

  • (转载)Android性能测试初探

    一、Android 性能测试初探(一) Android 性能测试,跟 pc 性能测试一样分为客户端及服务器,但在客...

  • 软件测试方法和技术有哪些?

    软件测试方法和技术有哪些?包括软件测试基础、软件测试方法、软件测试流程和规范、单元测试与集成测试、系统测试、验收测...

  • 软件测试基础(一)

    什么是软件测试? 软件测试到底需要学习什么? 了解软件测试的含义 软件测试遵守的准则 软件测试有哪些分类?分别是什...

网友评论

      本文标题:初探软件测试

      本文链接:https://www.haomeiwen.com/subject/kjazzktx.html