软件测试概念

静态测试:不运行代码,只分析代码逻辑

动态测试:运行被测代码,通过输入的测试用例,检查运行结果与预期是否一致

黑盒测试:把被测程序当成一个盒子,验证功能的正确性

测试分为几个阶段?
1,单元测试
2,集成测试
3,系统测试
4,验收测试

一条bug应该记录的信息?
1,问题描述
2,预期结果
3,实际结果
4,对应日志
5,严重程度
6,对应开发
7,bug标签

黑白盒区别?
1,黑盒只关注程序功能实现,不关注内部代码实现
2,白盒关注内部代码,逻辑实现

如何测试一个杯子?
1,功能
2,可靠性
3,兼容
4,性能
5,安全
6,易用性

http响应状态码?
1** 服务器接收成功,需要请求者继续执行操作
2** 成功,操作被成功接收并处理
3** 重定向,需要进一步的操作已完成请求
4** 客户端错误,请求包含语法错误或无法完成的请求
5** 服务端错误,服务器在处理请求中发生了错误

200 ok 请求成功
204 no content 无内容,服务器处理成功,但没有资源返回
206 表示客户端进行了范围请求,并且服务器成功执行了这部分的GET请求,响应报文中包含有content-range指定范围的实体内容

301 永久性重定向,标识请求资源被分配了新的url,只用应使用新的url
302 临时性重定向
303 请求资源被分配了新的url,应使用GET方法定向获取请求的资源
304 表示客户端发送附加条件的请求,服务端允许访问,但是请求未满足条件的情况下返回该状态码
307 临时重定向,与303有相同含义

400 请求报文中有错误
401 未经许可,需要通过http认证
403 服务器拒绝访问(访问权限有问题)
404 请求资源未找到

500 服务器发生错误
503 服务不可用
502 bad gateway
504 gateway timeout

tcp三次握手:
第一次发送syn=1
第二次返回 ack=1,syn=1
第三次返回 ack = 1

tcp四次挥手:
第一次发送fin=1
第二次发送ack=1
第三次发送fin=1
第四次发送ack=1

线程与进程的区别?
进程是内存中运行的应用程序,线程是进程中的一个执行任务。一个进程至少有一个线程
根本区别:
进程是操作系统资源分配的基本单位,线程是处理器任务调度和执行的基本单元
包含关系:
进程中包含线程
内存分配:
进程之间的地址空间和资源是相互独立的,线程之间的地址空间和资源是共享的
影响关系:
进程崩溃后不会影响其他进程,线程崩溃后整个进程都死掉。进程比线程要健壮
执行过程:
进程有独立的入口,顺序和出口,线程不能独立执行,必须依存在应用程序中

内存泄漏和内存溢出?
内存泄漏:程序在运行过程中申请的内存不释放
内存溢出:程序在运行过程中申请的内存超出最大内存

死锁?
两个或以上的程序在运行过程中,互相竞争资源导致互相都被阻塞,在没有外力帮助下,它们都不能推进下去。

避免死锁?
产生死锁的四个必要条件:
1,互斥条件
2,请求与保持条件:一个进程因请求资源而阻塞时,与已经获得的资源保持不放
3,不剥夺条件:进程已经获得的资源,在未使用完之前,不能强行剥夺。
4,循环等待条件:若干进程之间形成一种头尾相接的循环等待资源关系
只要发生死锁,必然满足上述四个条件,只要上述条件有一条不满足,就不会发生死锁

如何进行幂等性测试?
概念:一个http方法是幂等的,指同样的请求被执行一些和多次的效果是一样的
怎么测试?对一个接口重复发起,产生的效果只有一次,例如:多次调用支付接口,支付成功只有一次

正向代理与反向代理?
正向代理是客户端代理,代理客户端,服务端不知道实际发起请求的客户端
反向代理是服务端带来,代理服务端,客户端不知道实际提供服务的服务端

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

每天说够一万句废话

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值