PHPUnit 3.0集成Selenium组件和代码分析

PHPUnit 3.0新特性

PHPUnit 3.0引入了一系列的新特性以便用户更加方便地用它进行调试,并且使得3版本比以前任何版本的功能都更加丰富。

伪对象调试

你如何才能测试一个对象里面的方法被另外一个方法调用的时候运行是正确的呢?你如何可以忽略外部资源而单独进行调试呢?伪对象和局部测试可以为你解决这些问题。部分提供答复对这些和其它问题。

集成了Selenium组件

PHPUnit 3 集成了Selenium RC组件来提供更好的调试 (更高层次的平台测试来代替系统单一模块的独立测试)和浏览器兼容性测试(在不同的操作系统和浏览器中测试web应用) 。

代码覆盖面分析

怎么评估你的测试呢?怎么发现没有被测试的代码,或者换句话说,还没有被涉及到的代码呢?你怎么衡量代码测试的完整性? 所有这些问题可以由称为代码覆盖面分析的功能组件来解决。PHPUnit 3的一个新的特性就是为测试提供了更为详细的代码覆盖面详细信息。

PHPUnit的安装应该用PEAR的Installer实现

PHPUnit一般通过PEAR站进行发布,并且需要注册到本地的PEAR当中,PEAR站查看地址: pear.phpunit.de。以前的情况是这样的,目前PEAE的Installer可以直接通过PHPUnit站进行安装:pear安装phpunit/PHPUnit

早期从pear.php.net上面下载的PHPUnit和PHPUnit2安装包需要先卸载,因为现在PHPUnit 不再包含在PEAR当中了。

如何从PHPUnit 2.3 升级到3.0

PHPUnit3 向前兼容PHPUnit2.3。请注意,PHPUnit的2.0到2.3版本的类的名字的前缀是PHPUnit2_而不是PHPUnit_。目前的测试系统在PHPUnit3.0版本中仍然可以使用,但是推荐使用新的类的名字。

关于PHPUnit

在过去的十年中, PHP 已经发展成为一个小型网站到大型的Web运作平台都可以胜任的动态脚本语言。目前重要的商业逻辑也都可以用PHP来实现。但是,你如何来确保代码的运行的稳定性呢?当然,这个时候你需要一个好的工具,这也就是PHPUnit出现的原因。它是xUnit家庭成员中的一员,用来测试代码框架并让测试更加容易,功能分析更加轻松。

关于Sebastian Bergmann

Sebastian Bergmann 长期致力于众多的PHP应用项目的开发,也包括PHP项目本身。他目前在Skien 的eZ systems AS工作,负责eZ platform系统的管理组件。作为 PHPUnit 的开发者,他还帮助测试eZ 系统的许多组件。在业余时间,他喜欢研究开源软件和摄影,并喜欢旅行。

时间: 2024-09-28 03:14:46

PHPUnit 3.0集成Selenium组件和代码分析的相关文章

ASP.Net C#2.0全能数据库组件 (含下载实例源码地址)

asp.net|数据|数据库|下载 /* ?--------------------------?   | Title: ASP.Net C#2.0全能数据库组件 (开源含实例源码)|   | Project: DBOperatorService.Data                    |   | Subarea: DataSet                                   |   | Author: ξ箫音ξ                           

用VC6.0集成环境快速开发VxD

VxD (Virtual Device Driver), 即虚拟设备驱动程序, 是运行在处理器Ring0特权级别的驱动程序,可以执行任何处理器指令,访问机器中的任何数据寄存器.VxD被用作Windows 9x系统和物理设备之间的接口,扩展了WINDOWS 系统的核心服务,能够访问和控制实际的硬件环境. 随着WIN 2000和新一代的设备驱动程序WDM(Windows Driver Model)推出,预计VxD将慢慢过时,而现实情况却是:随便打开一种网络计数器的统计窗口就会发现,Windows 9

【翻译】基于 Create React App路由4.0的异步组件加载(Code Splitting)

基于 Create React App路由4.0的异步组件加载 本文章是一个额外的篇章,它可以在你的React app中,帮助加快初始的加载组件时间.当然这个操作不是完全必要的,但如果你好奇的话,请随意跟随这篇文章一起用Create React App和 react路由4.0的异步加载方式来帮助react.js构建大型应用. 代码分割(Code Splitting) 当我们用react.js写我们的单页应用程序时候,这个应用会变得越来越大,一个应用(或者路由页面)可能会引入大量的组件,可是有些组

servlet-Red5-1.0集成到eclipse中启动报错

问题描述 Red5-1.0集成到eclipse中启动报错 2015-7-4 19:09:27 org.apache.catalina.core.ApplicationContext log 严重: StandardWrapper.Throwable org.springframework.beans.factory.access.BootstrapException: Unable to initialize group definition. Group resource name [clas

Javascript日期级联组件代码分析及demo

最近研究下JS日期级联效果 感觉还不错,然后看了下kissy也正好有这么一个 组件,也看了下源码,写的还不错,通过google最早是在2011年 淘宝的虎牙(花 名)用原审JS写了一个(貌似据说是从YUI那边重构下的) 具体的可以看他的 博 客园 , 感觉kissy组件源码 思路也是和YUI类似 所以我今天的基本思路也和他们 的一样 只是通过自己分析下及用自己的方式包装下. 基本原理 1.传参中有 '年份下拉框dom节点', '月份下拉框dom节点', '天数下拉框dom 节点', "开始日期&

Java String字符串补0或空格的实现代码_java

废话不多说了,关键代码如下所示: package cn.com.songjy; import java.text.NumberFormat; //Java 中给数字左边补0 public class NumberFormatTest { public static void main(String[] args) { // 待测试数据 int i = 1; // 得到一个NumberFormat的实例 NumberFormat nf = NumberFormat.getInstance(); /

环信UI2.0集成时userProfileManager.h not found

问题描述 环信UI2.0集成时userProfileManager.h not found视频教程中没有出现这个问题,我自己注释掉或从其它文件夹中添加头文件都会一大堆没完没了的错误. 解决方案 这个类加了吗?demo中在Core Data文件夹下解决方案二:添加了一些头文件后,现在的问题变成了这样解决方案三:parse是一个处理昵称,头像的三方库,如果您不用的话,就将parse相关的删除掉,用的话就把依赖库加上

关于Android Studio2.0 集成 百度云push的问题,导入so包还能怎么导入

问题描述 关于Android Studio2.0 集成 百度云push的问题,导入so包还能怎么导入 Eclipse 可以推送 ,在AndroidStudio上集成的问题 估计是so包导入的不对 ,但是网上说的方法 新建jniLisb我试了 ,复制到libs,在android节点加gradle语句我也试了 都不行,请大神帮我看看啊 哪集成的问题 下面是部分报错 Error:warning: Ignoring InnerClasses attribute for an anonymous inne

3.0集成的单聊界面的时候,出现-[NSBundle initWithURL:]: nil URL argument'

问题描述 3.0集成的单聊界面的时候,出现-[NSBundle initWithURL:]: nil URL argument' 解决方案 目前错误,定位到了EaseChatToolbar上,将这个注掉就不会抱错了解决方案二:需要导入EaseUIResource.bundle