一、功能测试
1、测试流程:需求评审--制定测试计划--编写测试用例--测试评审--进入系统测试--生成测试报告--验收测试--完结。
(1)不确定你的工作经验是否真实
(2)在流程的描述中,添加细节点
首先参与到项目的需求评审,在需求的评审下,我们提出问题,进行需求的整改,整改之后复评审,复评审之后确定到需求定稿之后,我们结合项目的计划和需求的这个项目实现的技术内容,来制定一个完整的测试计划,定义好我们的工作内容,定义完成之后,基于需求文档来执行测试用例的编写,编写完测试用例之后,会发起一个测试评审,测试评审过程中,会与产品经理、开发人员还有测试人员一起来做测试评审,由各方维度来评估我们的测试覆盖面是否完整,以及说业务流程是否能够很好的覆盖。接着等待开发提交版本,进入到系统测试,在进入系统测试之前,我们会增加预步骤,冒烟测试,通过冒烟测试来评估当前测试的版本它的基本功能是否可以实现,它的正常流程是否能够实现,如果能够实现,我们就会进入系统测试;如果不通过,我们就会返回给开发进行自行修改,提升代码质量。进入到系统测试之后,我们结合之前所定义的测试用例,对系统进行完整的测试,测试完成之后,我们将遇到的缺陷记录到缺陷管理工具里面,跟进缺陷的修复进度,对新版本不停地做迭代,让系统的功能稳定下来,基于最终的测试结果会生成测试报告,最后评估这个系统是否能够达到发行的版本。
2、项目流程:
(1)确保你实际参与过测试工作。
3、测试工具:
主流工具:postman、JMeter、禅道、Jira、RF、Fiddler、Linux、MySQL、appium等。
二、性能测试
1、如何选择性能测试工具?
首先会考虑行业内是否满足业务需求,选择主流应用的测试工具,以便后期人员更容易上手,其次会考虑这个测试工具能否支持到一个分布式的部署。在做性能测试时经常会考虑大批量的用户和长时间的用户,单排的计算机无法满足这种测试,我们要考虑到我们选择的测试工具要具备分布式部署执行的能力。最后是自己对于这个工具的熟悉度,一般来讲性能测试会选择jmeter这个软件来实现到工作的辅助。
2、性能测试的流程?
(1)性能需求分析,定义完整的性能指标。同步设计性能场景。
(2)搭建性能测试环境,包括系统初期的数据准备、应用的组件、工具等。
(3)基于场景实现测试脚本。
(4)基于性能需求准备测试数据。
(5)执行测试并采集数据。
(6)性能诊断与分析。
(7)性能调优。
(8)输出报告。
3、如果在测试过程中,发现响应时间太长了,应该怎么进行下一步分析?
首先排查负载记录,检查本地的机器是否是资源不足,性能场景的数据量太大了或者说脚本设计不合理;第二排查响应消耗的时间是在哪个位置,是不是因为网络传输的问题,单位时间内发送请求发送的太多了,导致带宽没有办法满足到同步去接收这么多的数据传输,这个时候就会进行排队,导致越排队越到后面的接口的请求的响应时间就越长,这个时候我们可以扩宽我们的宽带,对数据的传输内容进行压缩等方法来解决带宽所引起的问题;第三排查服务器的问题,比如说服务端增加了一个rocket mq ,来将请求来的数据全部先进入到我的消息队列里面去,这样网络就不会有问题,就是服务器的问题,首先考虑web服务器,比如网关是否存在问题,应用服务器,比如说cpu、内存资源的使用是不是太高了,可以通过cpu、内存去分析,先看进程,看完进程看线程,看完线程再反编译看是什么原因引起的cpu、内存过高,把消耗大的线程定位到,找到它消耗大的原因,提出整改优化的建议,如果应用服务器也没有问题就考虑数据库,是不是存在有慢查询在数据库上等问题。
三、自动化测试
1、web自动化测试 Selenium+webdriver
八大元素定位(定位语法)
动态元素如何定位?
常见的异常解决
(1)元素定位不到(定位错误、没有添加等待、iframe或者句柄)
(2)元素无法正常交互(页面是否最大化、是否需要悬停、是否需要滚动、元素定位错误)
(3)超时(显式等待超时因为元素有误、窗体最大化超时)
(4)无法创建 session (检查浏览器版本与driver是否匹配)
测试框架怎么设计?
2、APP自动化测试
如何自动化测试微信公众号和小程序?
如何实现webview的切换,如何获取webview中的元素?
如何多设备集群管理?
3、接口自动化测试
企业实际医用的接口自动化测试都是基于关键字驱动来实现的。
如何管理接口数据?
Yaml:考虑接口关联,基于接口业务链的流程测试下
Excel:考虑单接口的多条件覆盖
Py Json
网络协议和框架
4、持续集成测试
版权归原作者 车厘子子 所有, 如有侵权,请联系我们删除。