平台就是一种用来实现某种功能的体系。平台包括各类不一样的元素,架构,流程,标准,机制和工具等等。php
以测试为例:css
- 架构:测试体系中有关的各类Roles以及对应的Responsibilities。html
- 流程:测试相关的各类流程,好比测试项目流程,测试管理流程,配置管理流程……前端
- 标准:在测试相关的各类流程中应该遵循的各类标准。java
- 机制:各类相关的机制,如沟通机制,反馈机制,知识传递机制……python
- 工具:用于实现各项工做和流程的辅助工具,如自动化测试工具,测试管理工具,知识管理工具……jquery
以上是百度百科里面的介绍,不过目前因为公司出于安全,公司利益,技术保护等角度考虑,没有通用的测试平台;或是彻底使用其余公司开发的平台,通常都是以某一项目技术或是某一种功能来切合点,来经过开源的代码进行二次开发,或是自主开发相应的平台。如,资源共享平台(wiki),接口自动化测试平台,bug管理平台(jira),项目管理平台,环境部署平台,服务,接口或是日志监控等等,也有糅合了多个功能而造成的多功能平台。chrome
记得刚刚接触测试的时候,通常都是手工测试,偶尔借助于一些儿如PostMan,QTP之类的测试工具,或是火狐,chrome的一些儿插件,简单测试,感受就挺不错的。随着测试技术的发展,自动化测试火了起来,各类测试框架,测试工具也就出来了,不过你们仍是喜欢使用开源的框架,如Webdriver,Appium,Robotium等,感受此时若是测试人员不会点儿技术,就落伍不少。数据库
固然也有很多公司开始针对测试这个行业,来开发专门的测试工具和测试平台,如LoadRunner,Testin等,虽然很好用,可是因为多方面的缘由,不少大中型公司,有必定技术沉淀的公司是不会使用它们的。在这种环境下,就产生了各类利用现有的开源框架,或是本身规划架构开发本身的测试平台等。此时对测试人员的要求更加高了,甚至比开发人员要求的更高。安全
固然,因为这样的平台公司内部使用的比较多,因此也不能彻底了解各大公司的平台发展以及现状,不过大体方面仍是同样的。都是致力于开发各类各样的平台,以达到整合测试资源,规范测试流程,提升测试效率,提高测试效率等目的。
以往经过尝试基本的测试技术,如条件覆盖,边界值覆盖等从而去作手工测试的年代;逐渐转移到经过开源的框架如python的unittest,Webdriver,Appium,Robotium,或是java的TestNG等作自动化测试。此时经过各类单一的语言,结合框架,就能实现自动化测试,作功能回归,监控等操做。如今上升到平台的开发的话,就不可同日而语了,由于咱们测试人员开始向测试开发转变的化,仍是有很多困难的。
因为咱们开发测试平台公司很难会为咱们安排相应的前端,运维等同窗来支持咱们的,因此要求咱们须要了解如下技术:
此处借助本事一词来聊一下开发测试平台须要的其余方面,咱们不说能力,而说本事,这是颇有中国特点的。由于能力只说明须要单方面的技术,而本事则不一样,是一项综合素质。因此咱们须要的本事是:
上面我简单地介绍了一下测试平台,测试平台开发中相关的技术技术准备,其余须要了解的内容。都是我的工做中的经验及认识,没有什么权威性,或是指导方向性,只但愿能给这方面感受兴趣的同窗一些帮助,不至于太迷茫,感受无从下手。