我刚刚写了我的第一个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));
}
}
知道出了什么问题吗?
答案 0 :(得分:1)
您的测试没有断言。
如果您的方法返回布尔值,请设置一个。或者使check方法返回一个实际值,并使用script table的check关键字将该实际值与预期值进行比较。