如果还想在测试这条路上继续走下去的话,那么下面这些东西就是我们必须去掌握的,至少你还不想止步于简单的黑盒测试~~其实,一直想去接触Linux下的应用测试,这样能学到东西会很多,而且会非常的受用。之前听小布老师讲,如果你想在IT技术上长期发展下去,那么你就大胆拥抱Linux吧,因为在这里你能学到东西远胜过于你在Windows平台下学到的东西,而其中最经典的一段话就是:如果你一直跟随微软的技术,那么终究会被拖死,因为微软的技术一直在变化,而你却需要不断的去学习他的东西。而Linux不一样,它更多的是让你去理解底层的技术,让你从原理上去理解技术的核心,永远以不变应万变的姿态去面对未来的技术革新。

  我想作为一个测试人员,如果你确实还没接触过网络、数据通信方面的技术,那么咱们的路还很长,至少我认为软件测试并非只停留在上层的应用,而测试的最高境界应该是对底层核心技术的测试,通过架构分析、协议数据包分析等等来测试出结果~~~所以我们应该掌握的技术有:TCP/IP、Socket、多线程,这些是必须的。

  1、先来看看TCP/IP的体系结构,如下图:

  TCP/IP协议实际上就是在物理网上的一组完整的网络协议。其中TCP是提供传输层服务,而IP则是提供网络层服务。下面是各个层的协议说明:

  IP: 网间协议(Internet Protocol) 负责主机间数据的路由和网络上数据的存储。同时为ICMP,TCP,UDP提供分组发送服务。用户进程通常不需要涉及这一层。

  ARP: 地址解析协议(Address Resolution Protocol)

  此协议将网络地址映射到硬件地址。

  RARP: 反向地址解析协议(Reverse Address Resolution Protocol)

  此协议将硬件地址映射到网络地址

  ICMP: 网间报文控制协议(Internet Control Message Protocol)

  此协议处理信关和主机的差错和传送控制。

  TCP: 传送控制协议(Transmission Control Protocol)

 这是一种提供给用户进程的可靠的全双工字节流面向连接的协议。它要为用户进程提供虚电路服务,并为数据可靠传输建立检查。(注:大多数网络用户程序使用TCP)

  UDP: 用户数据报协议(User Datagram Protocol)

  这是提供给用户进程的无连接协议,用于传送数据而不执行正确性检查。

  FTP: 文件传输协议(File Transfer Protocol)

  允许用户以文件操作的方式(文件的增、删、改、查、传送等)与另一主机相互通信。

  SMTP: 简单邮件传送协议(Simple Mail Transfer Protocol)

  SMTP协议为系统之间传送电子邮件。

  TELNET:终端协议(Telnet Terminal Procotol)

  允许用户以虚终端方式访问远程主机

  HTTP: 超文本传输协议(Hypertext Transfer Procotol)

  TFTP: 简单文件传输协议(Trivial File Transfer Protocol)

  2、TCP/IP协议的核心部分是传输层协议(TCP、UDP),网络层协议(IP)和物理接口层,这三层通常是在操作系统内核中实现。通常用户的服务需要通过应用程序来实现,所以在底层与应用层就是通过套接字来实现,也就是我们通常所说的Socket来建立连接的。具体如下图所示:

  TCP/IP协议核心与应用程序关系如上图所示,所以对照这个图来理解我们的应用层开发,就直观多了,特别是对一些应用进行性能测试时,基于什么协议来通信,分析也会得心应手了。

  所以说测试要学的东西还很多,到最后技术也许比开发人员都要牛,最重要的是这些东西能够给你的工作带来实际的帮助。正所谓高手过招比的内功,这些都是内功的修炼,别等到用的时候才发现自己不会,那就迟了。测试的路还很长,埋头学习吧,啥也不说~~

最新文章

  1. 安卓 NEXUS6 修改分辨率,density
  2. Codeforces 500A - New Year Transportation【DFS】
  3. 解决unity3d发布的网页游戏放到服务器上无法使用的问题
  4. c编程:提示用户输入一个0—9的数字进行猜测电脑产生的随机数。一共有三次机会。
  5. 【Python爬虫】安装 pyQuery 遇到的坑 Could not find function xmlCheckVersion in library libxml2. Is libxml2 installed?
  6. css background-position:x% y%
  7. NYOJ 284 坦克大战 【BFS】+【优先队列】
  8. JTAG应该如何接线
  9. 基于 WebRTC 创建一款多人联机游戏
  10. Dubbo中SPI扩展机制解析
  11. mybatis配置文件说明(configuration)
  12. xenserver添加磁盘后挂载为本地存储库并且删除
  13. sed command
  14. ceph压力测试结果总结
  15. 代码问题: 【MatConvNet库编译】
  16. Usaco2012-2013 金组 题解 (暂缺Hill walk以及Figue eight)
  17. yearProgress.vue
  18. EBS R12 MOAC原理探索 (转)
  19. RESTful 接口设计规范
  20. 那些你不知道的PS大片摄影

热门文章

  1. wso2 CEP集成storm实验
  2. C#语言之“String.Split”的使用【转】
  3. 小团队git开发模式
  4. fido-uaf-protocol-v1.0
  5. Win7和Ubuntu下mysql 安装配置
  6. java设计模式(二)
  7. mui 访问手机自带是否连接网络
  8. 解决ubuntu下的firefox无法在线播放音频和视频的问题
  9. putty完全使用手册--多窗口---git提交---连接数据库--自动日志显示
  10. Infix expression 计算 without '(' and ')'