【CFUNIT】
■環境構築
1.CFUnit 2.0
beta2をダウンロードし(http://cfunit.sourceforge.net)、解凍した『net』フォルダを
C:\CFusionMX7\wwwroot\に配置する。
2.『CFUnitExample』(CFML)プロジェクトを作成する。
※プロジェクトの出力先は『C:\Inetpub\wwwroot\』に指定すること。
■ロジック、テストクラスの作成
1.『CFUnitExample』プロジェクトで下記のMyCFC.cfcを作成する。
<cfcomponent displayname="MyCFC">
<cfproperty name="temp1" type="string">
<cfproperty name="temp2" type="string">
<cffunction name="init" returntype="MyCFC">
<cfset VARIABLES.temp1 = 3>
<cfset VARIABLES.temp2 = 2>
<cfreturn THIS>
</cffunction>
<cffunction name="add" returntype="numeric">
<cfreturn (VARIABLES.temp1 + VARIABLES.temp2)>
</cffunction>
<cffunction name="sub" returntype="numeric">
<cfreturn (VARIABLES.temp1 - VARIABLES.temp2)>
</cffunction>
</cfcomponent>
2.『CFUnitExample』プロジェクトで下記のMyCFCTest.cfcを作成する。
<cfcomponent displayname="MyCFCTest"
extends="net.sourceforge.cfunit.framework.TestCase">
<cfproperty name="tempCFC" type="MyCFC">
<cffunction name="setUp" returntype="void" access="public">
<cfset VARIABLES.tempCFC = CreateObject("component",
"MyCFC").init()>
</cffunction>
<cffunction name="testAdd" returntype="void" access="public">
<cfset result = VARIABLES.tempCFC.add()>
<cfinvoke method="assertEquals">
<cfinvokeargument name="expected"
value="#numberFormat(5.0)#">
<cfinvokeargument name="actual"
value="#numberFormat(result)#">
</cfinvoke>
</cffunction>
<cffunction name="testSub" returntype="void" access="public">
<cfset result = VARIABLES.tempCFC.sub()>
<cfinvoke method="assertEquals">
<cfinvokeargument name="expected"
value="#numberFormat(1.0)#">
<cfinvokeargument name="actual"
value="#numberFormat(result)#">
</cfinvoke>
</cffunction>
</cfcomponent>
3.『CFUnitExample』プロジェクトで下記のmytest.cfml(テスト起動用)を作成する。
<cfsilent>
<cfsetting showdebugoutput="No">
<cfset testClasses = ArrayNew(1)>
<cfset ArrayAppend(testClasses,
"net.sourceforge.cfunit.CFUnitExample.MyCFCTest")>
<!--- Add as many test classes as you would like to the array
--->
<cfset suite = CreateObject("component",
"net.sourceforge.cfunit.framework.TestSuite").init( testClasses )>
</cfsilent>
<cfoutput>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Unit Test Example</title>
</head>
<body
<h1>CFUnit Test</h1>
<cfinvoke component="net.sourceforge.cfunit.framework.TestRunner"
method="run">
<cfinvokeargument name="test" value="#suite#">
<cfinvokeargument name="name" value="">
</cfinvoke>
</body>
</html>
</cfoutput>
■テスト実行
1.プロジェクトで作成したcfcはC:\CFusionMX7\wwwroot\に配置する。
(今回はC:\CFusionMX7\wwwroot\net\sourceforge\cfunit\CFUnitExampleに配置)
2.http://localhost/CFUnitExample/mytest.cfmlにアクセスすると、
テストが実行されるのを確認する。
以上
最終更新:2007年01月15日 18:02