我需要对以下内容做出哪些更改?
我想确保testInsert
方法仅在testInternalAccess
通过且testInternalAccess
不计入失败时运行。
@Test
public void testInternalAccess() {
URL url = null;
try {
url = new URL("http://internalpage");
InputStream is = url.openConnection().getInputStream();
} catch (Exception e) {
fail();
}
}
@Test(groups = "database", dependsOnMethods = "testInternalAccess")
public void testInsert() {
// some code
}
在上面的例子中:
testInternalAccess
运行,失败并报告为测试失败testInsert
运行并失败或者,使用TestNG示例的创建者
@Test
public serverStartedOk() {}
@Test(dependsOnMethods = { "serverStartedOk" })
public method1() {}
method1
如何知道服务器是否真的开始正常? serverstartedOk
将如何与世界进行沟通?
答案 0 :(得分:1)
根据我们上面的讨论,以下是简要总结。
如果您希望在运行课程中的所有测试之前运行方法testinternalAcecess
,请使用@BeforeClass
@BeforeSuite
public void testInternalAccess() {
URL url = null;
try {
url = new URL("http://internalpage");
InputStream is = url.openConnection().getInputStream();
} catch (Exception e) {
fail();
}
}
该方法仅在套件中运行所有测试之前运行一次!而你的测试方法将是下面的一些事情
@Test(groups = "database")
public void testInsert() {
// some code
}
Bingo,这会奏效!