我想通过传递特定的参数来动态创建java类
我正在为API测试开发框架,它使用TestNG。现在我有一个类->我想通过传递特定的参数来动态创建java类,java,testng,Java,Testng,我正在为API测试开发框架,它使用TestNG。现在我有一个类-> public class PostTest { @Test(dataProvider="create_post") public void addPost(parameters from data provider) { // Code to add post } @Test(dataProvider="get_post") public void g
public class PostTest
{
@Test(dataProvider="create_post")
public void addPost(parameters from data provider)
{
// Code to add post
}
@Test(dataProvider="get_post")
public void getPost(parameter from data provider,In this case it could be id)
{
// Code to get post
}
@Test(dataProver="delete_post")
public void deletePost(parameter from data provider,In this case it could be id)
{
// Code to delete post
}
}
因为我的项目(当然是基于maven的)目录结构是
src->test->postest.java
现在,我想为TestingCommentsAPI添加一个新的测试。
因此,我需要用所有这些方法在新文件上进行编写
src->test->CommentTest.java
但我不想编写整个新文件,然后再次编辑从post到channel的所有api名称,所以我想动态创建新类并编辑这些字段
public class $(Dynamic)Test
{
@Test(dataProvider="create_$(Dynamic)")
public void add$(Dynamic)(parameters from data provider)
{
// Code to add $(Dynamic)
}
@Test(dataProvider="get_$(Dynamic)")
public void get$(Dynamic)(parameter from data provider,In this case it could be id)
{
// Code to get $(Dynamic)
}
@Test(dataProver="delete_$(Dynamic)")
public void delete$(Dynamic)(parameter from data provider,In this case it could be id)
{
// Code to delete $(Dynamic)
}
}
有什么方法可以让我简单地将参数作为API的名称传递,然后在src->test目录和字段$(Dynamic应该被API名称替换)下创建自动类,我认为您应该使用IDE模板。对于intelliJ,对于eclipse@RC,你能给我更多的信息吗?让我们假设你有这样的工具。但是你仍然需要填充方法体。您将如何做到这一点?如果您只需要基于这样一个模板的text.java文件,也许类似的东西就可以了?模板看起来与您得到的非常接近。