我想弄清楚FitNesse是如何工作的,并没有成功运行测试。 有没有人可以帮助我,我错过了什么?
我已按照“Android应用程序测试指南”一书中的所有步骤进行操作。 我有一个android示例项目TemperatureConverter和一个测试项目TemperatureConverterTest。
Bellow是我的FitNesse Wiki:
!contents -R2 -g -p -f -h
!define TEST_SYSTEM {slim}
!path C:\User\Workspaces\android\FitNesse\fitnesse.jar
!path C:\User\Workspaces\android\TemperatureConverter\bin\classes\
!path C:\User\Workspaces\android\TemperatureConverterTest\bin\classes\
!|import |
|com.example.aatg.tc.test.fitnesse.fixture|
!define COLLAPSE_SETUP {true}
!define COLLAPSE_TEARDOWN {true}
!|TemperatureConverterCelsiusToFahrenheitFixture |
|celsius|fahrenheit? |
|0.0 |~= 32 |
|100.0 |212.0 |
|-1.0 |30.2 |
|-100.0 |-148.0 |
|32.0 |89.6 |
|-40.0 |-40.0 |
|-273.0 |~= -459.4 |
|-273 |~= -459.4 |
|-273 |~= -459 |
|-273 |~= -459.40000000000003 |
|-273 |-459.40000000000003 |
|-273 |-459.41 < _ < -459.40 |
|-274.0 |Invalid temperature: -274.00C below absolute zero|
但是当我运行测试时,我有以下错误:
答案 0 :(得分:2)
要做的第一件事是检查类路径声明。您收到的错误表明FitNesse没有找到您的课程。
确保在测试的父页面中有一个!path声明,并确保它已正确定义。
有关详细信息,请参阅http://fitnesse.org/FitNesse.FullReferenceGuide.UserGuide.WritingAcceptanceTests.ClassPath。
<强>更新强> 现在我可以看到你确实有你的!path语句。我以前一定都错过了。还有一些事情要看:
答案 1 :(得分:1)
父套件页面或测试页面中的!path语句应指向包含.class文件的父包所在目录的路径,而不一定指向包含类文件本身的子目录。目录结构的其余部分由测试页上导入表中的类路径隐含。
所以,在你的例子中,你有
C:\User\Workspaces\android\TemperatureConverter\bin\classes\
com.example.aatg.tc.test.fitnesse.fixture
因此您需要连接它们以查找.class文件位置 C:\用户\工作区\机器人\ TemperatureConverter \ BIN \类\ COM \示例\ AATG \ TC \测试\ FitNesse的\夹具\ TemperatureConverterCelsiusToFahrenheitFixture.class
适用于* nix用户
/Users/johndoe/myFitProject/target/test-classes
这应该是java项目的编译类目录树已植根的系统目录...换句话说,“com”文件夹的位置最终包含.class文件。