Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Selenium TestNg参数_Selenium_Testng_Testng Annotation Test - Fatal编程技术网

Selenium TestNg参数

Selenium TestNg参数,selenium,testng,testng-annotation-test,Selenium,Testng,Testng Annotation Test,我是SELENIUM TESTNG新手,我需要创建一个包含两个参数的方法 一个是从testngxml发送参数,另一个是从调用方法的地方传递参数 我希望有一个可重用的代码来检查我要使用的DB连接,并且相同的方法使用要执行的查询 @参数({“env”}) } 你能告诉我如何做到这一点吗。我使用了下面的方法来调用测试,它对我有效 @测试(优先级=2) { } 它对我来说很好您遇到了什么错误?我尝试在另一个测试中调用它,当我尝试调用函数时,它要求传递其中一个参数来自testng xml文件的参数和我发送

我是SELENIUM TESTNG新手,我需要创建一个包含两个参数的方法
一个是从testngxml发送参数,另一个是从调用方法的地方传递参数

我希望有一个可重用的代码来检查我要使用的DB连接,并且相同的方法使用要执行的查询

@参数({“env”})

}


你能告诉我如何做到这一点吗。

我使用了下面的方法来调用测试,它对我有效

@测试(优先级=2)

{

}


它对我来说很好

您遇到了什么错误?我尝试在另一个测试中调用它,当我尝试调用函数时,它要求传递其中一个参数来自testng xml文件的参数和我发送查询的调用方法。您可以显示它是哪个函数吗?公共类测试{public void t1(){DB.DataBase(env,query)}@Test()public void flightNum_DBvalidate()抛出实例化异常、IllegalAccessException、ClassNotFoundException、SQLException{String data1=DB.DataBase(“选择stmt”);
@Test(dataProvider = "query")

public static int DataBase(String env,String query) throws SQLException, InstantiationException, 
        IllegalAccessException, ClassNotFoundException {

    Class.forName("net.sourceforge.jtds.jdbc.Driver");

    switch (env) {
     case "ENV1":
         con = DriverManager.getConnection("ENV1 CON");
         break;
     case "ENV2":
         con = DriverManager.getConnection("ENV2 Con");
         break;
    default:
            break;
    }   
    Statement statement = con.createStatement();

    // We use Sybase specific select getdate() query to return date
    ResultSet rs = statement.executeQuery(query);


    if (rs.next()) {
        S1 = rs.getInt(1);
        S2 = rs.getString(2);
        S3 = rs.getString(3); 
        System.out.println(S1+" "+S2+" "+S3);
    }
    rs.close();
    statement.close();
    con.close();

    return S1;
}
@Parameters({"env",query"})
public void DBvalidate(String env, String query) 
 query = "select * from emp";

 String data1 = DB.DataBase(env, query);