Fitnesse执行太多测试

时间:2017-05-31 10:26:19

标签: java testing fitnesse

我刚刚写了我的第一个fitnesse测试。该测试在fitnesse runner的帮助下执行。我的项目包含1个fitnesse测试。这个测试本身就成功了,但是当开始测试时,fitnesse似乎要执行两次测试。第二次测试失败了。

Failed tests:
fitnesse.RunLoginFT at least one test executed in LoginTest
0 right, 0 wrong, 0 ignored, 0 exceptions

Tests run: 2, Failures: 1, Errors: 0, Skipped: 0

我进行了下一次测试:

@RunWith(FitNesseRunner.class)
@FitNesseRunner.Suite("LoginTest")
@FitNesseRunner.FitnesseDir("./src/test/resources")
@FitNesseRunner.OutputDir("target/fitnesse")
public class RunLoginFT {

}

我的测试场景如下:

!define TEST_SYSTEM {slim}
|import|
|nl.belastingdienst.jos.cta.pipeline.kantoor.functioneletests.fitnesse|

|script|login test|
|open|!-https://localhost:9443/url-!|
|enter|XXXX|as|j_username|
|enter|XXXX|as|j_password|
|click|submit|
|check field exists|testknop|
public class LoginTest {

private WebDriver driver;

public void open(String siteUrl) {
    driver = new HtmlUnitDriver();
    driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);
    driver.get(siteUrl);
}

public void enterAs(String value, String place) {
    driver.findElement(By.id(place)).sendKeys(value);
}

public void click(String button) {
    driver.findElement(By.id(button)).click();
}

public void checkFieldExists(String fieldName) {
    // Als het element niet gevonden kan worden treed eer een exception op dus assert is niet
    // nodig
    driver.findElement(By.id(fieldName));
}

}

知道出了什么问题吗?

1 个答案:

答案 0 :(得分:1)

您的测试没有断言。

如果您的方法返回布尔值,请设置一个。或者使check方法返回一个实际值,并使用script table的check关键字将该实际值与预期值进行比较。