2017-05-12 121 views
-1

我正在交付管道。我想在其中集成多个测试自动化框架。其中之一是Fitnesse。在网络上,我看到很多使用wikiserver测试Java类的例子。但是我不明白的是,如果可以测试一个简单的(jsp)登录表单。另外我想从Juni测试中启动此测试,而不安装wikiserver。只需添加Fitnesse maven依赖。Fitnesse登录测试

有没有人可以给我一个如何做到这一点的例子?

谢谢!

+0

请首先尝试一些代码。 –

+0

我已经尝试了很多,正如我所说的,编写一个测试Java方法和维基服务器结合的Fitnesse测试是没有问题的。但是找不到我需要的任何起点 – Bgvv1983

+0

你可能想要的是[Selenium](http://www.seleniumhq.org/),或者一些[Fitnesse网页插件](http://www.fitnesse .org/PlugIns#slimfixtures)。但根据你的描述,它是[JUnit + Selenium](http://www.baeldung.com/java-selenium-with-junit-and-testng) – Morfic

回答

2

你的问题似乎是双重的:

  • 我怎么写一个FitNesse的测试登录网页,以及:
  • 我怎么运行输送管道内的这个测试(我想要它充当 jUnit测试)

从你的问题,我不清楚你是否已经设法写你正在寻找的测试。就像在你的问题的评论中提到的那样:FitNesse本身并没有提供任何直接测试Web表单的方式。您需要编写自己的代码来将wiki连接到要测试的网页(一个灯具)或使用包含这种灯具的库。

要在交付管道内部运行FitNesse测试(如jUnit测试),可以使用RunWith注释编写jUnit测试,然后指定FitNesse的FitNesseRunner。类似下面的测试从FitNesse's own tests

package fitnesse.junit; 

import org.junit.runner.RunWith; 

@RunWith(FitNesseRunner.class) 
@FitNesseRunner.Suite("FitNesse.SuiteAcceptanceTests.SuiteSlimTests.TestScriptTable") 
@FitNesseRunner.FitnesseDir(".") 
@FitNesseRunner.OutputDir("./build/fitnesse-results") 
public class FitNesseRunnerTest { 
} 

我已经创建一个包含两个灯具使用网络登录表单(无论是通过浏览器,硒,或直接在(open source) project发送一个HTTP POST到服务器),并从构建服务器运行您在wiki中定义的测试(提供一个jUnit测试,您可以通过添加系统属性来配置该测试来运行特定的测试/套件)。所以如果你还没有设置,那可能是一个很好的起点。

使用项目登录表单测试(例如称为MyTests.LoginTest)可能看起来像:

|script|browser test| 
|open|https://example.com/myprofile| 
|enter|johndoe|as|Username| 
|enter|secret|as|Password| 
|click|Login| 
|check|value of|Firstname|John| 
|check|value of|Lastname|Doe| 

和呼叫运行测试(使用Maven),这将是嵌入在你的管道:

mvn clean test-compile failsafe:integration-test -DfitnesseSuiteToRun=MyTests.LoginTest -DseleniumGridUrl=http://${SAUCE_USERNAME}:${SAUCE_ACCESS_KEY}@ondemand.saucelabs.com:80/wd/hub -DseleniumCapabilities="browserName:chrome,platform:Windows 7,screenResolution:1680x1050" 
+0

嗨Fried, 你是对的。这是一个两折的问题。由于这对我来说是全新的,所以很难解释我想要的是什么。你的解决方案似乎是我正在寻找的。首先,我想通过wikiserver buit运行测试,然后我收到以下消息:__EXCEPTION __:java.lang.NoClassDefFoundError:LoginTest(错误的名称: 而在下一步中,我看到消息:实例scriptTableActor.open。不存在 – Bgvv1983

+0

这听起来像你的设置还不完全正确。总是有点麻烦。您是否尝试过使用我的项目进行示例项目,并查看HsacExamples.SlimTests.BrowserTests 以下的示例wiki页面是否适合您?尝试修改其中一个用于登录页面。 –

+0

还没有。不知道是否允许我在办公室下载它:( 目前我已经使用stand-alone.jar启动了fitnesse,这可能是一个问题吗? – Bgvv1983