自动化测试,测试驱动开发
Android自动化框架
http://bbs.c114.net/blog-1025779-5322.html
几种常见的Android自动化测试框架及其应用
php自动化测试框架
http://www.ltesting.net/html/30/n-158030.html
流行PHP测试框架phpunit、simpletest、PHP-QAT 。PHP-QAT 能做单元测试、web应用测试等。
WEB 自动化测试工具 Selenium 简介及其应用
http://my.oschina.net/leejun2005/blog/267990
Web 自动化测试与智能爬虫利器:PhantomJS 简介与实战
http://my.oschina.net/leejun2005/blog/407043
PhantomJS:基于WebKit、开源的服务器端JavaScript API
http://www.infoq.com/cn/news/2015/01/phantomjs-webkit-javascript-api
构建通用的自动化测试平台
http://wenku.it168.com/d_000245447.shtml
自动化测试,在我们功能还没有稳定的时候,不建议,但是我建议现在做起来单元测试
是否采用自动化测试 会涉及到技术选型的
比如angularJS天生就适合单元测试 自动化测试的,其他js框架有些则很难进行自动化测试
单元测试,开发自己每个迭代做一些白盒测试,我觉得是可以的,但是这个前提也是代码规范
php跑单元测试代码貌似还比较困难,java就有完整的体系,正规的都是先写完测试用例再开发代码的,测试用例写完跑通开发就完成一大半了
写的代码通过测试用例的基本上没什么bug,除非测试用例本身逻辑有问题
需求明确的情况下是可以把单元测试用例写完了再开发代码的,甚至是可以分开两个人进行的
改需求前要先改测试用例,代码必须通过测试用例才能提交
自动化测试 是用程序自己去跑的
php的单元测试比较麻烦
JAVA的junit非常强大
-----------------------------
自动化是后期考虑的事情
系统不稳定、需求变更频繁还有项目周期短的项目都不适合做自动化测试
我觉得技术沉淀是要的,但现在项目紧急的情况下还是先保证出一个稳定的版本
这个并不矛盾,只是开发流程的问题
有单元测试开发人员代码返工的概率低很多
单元测试是自动化测试的一部分
这个是长期规划,需要需求人员给出方案
=====================================
测试驱动开发
http://baike.baidu.com/view/184088.htm
测试驱动开发,英文全称Test-Driven Development,简称TDD,是一种不同于传统软件开发流程的新型的开发方法。
它要求在编写某个功能的代码之前先编写测试代码,然后只编写使测试通过的功能代码,通过测试来推动整个开发的进行。
这有助于编写简洁可用和高质量的代码,并加速开发过程。
测试驱动开发可以根据需求参考下
或许只有了解了测试驱动开发的本质和优势之后,你才会领略到她的无穷魅力。 测试驱动开发不是一种测试技术,它是一种分析技术、设计技术,更是一种组织所有开发活动的技术。相对于传统的结构化开发过程方法,它具有以下优势:[4]
1) TDD根据客户需求编写测试用例,对功能的过程和接口都进行了设计,而且这种从使用者角度对代码进行的设计通常更符合后期开发的需求。因为关注用户反馈,可以及时响应需求变更,同时因为从使用者角度出发的简单设计,也可以更快地适应变化。
2) 出于易测试和测试独立性的要求,将促使我们实现松耦合的设计,并更多地依赖于接口而非具体的类,提高系统的可扩展性和抗变性。而且TDD明显地缩短了设计决策的反馈循环,使我们几秒或几分钟之内就能获得反馈。
3) 将测试工作提到编码之前,并频繁地运行所有测试,可以尽量地避免和尽早地发现错误,极大地降低了后续测试及修复的成本,提高了代码的质量。在测试的保护下,不断重构代码,以消除重复设计,优化设计结构,提高了代码的重用性,从而提高了软件产品的质量。
4) TDD提供了持续的回归测试,使我们拥有重构的勇气,因为代码的改动导致系统其他部分产生任何异常,测试都会立刻通知我们。完整的测试会帮助我们持续地跟踪整个系统的状态,因此我们就不需要担心会产生什么不可预知的副作用了。
5) TDD所产生的单元测试代码就是最完美的开发者文档,它们展示了所有的API该如何使用以及是如何运作的,而且它们与工作代码保持同步,永远是最新的。
6) TDD可以减轻压力、降低忧虑、提高我们对代码的信心、使我们拥有重构的勇气,这些都是快乐工作的重要前提。
7)快速的提高了开发效率