首页 > 解决方案 > 在硒中使用字符串外部测试

问题描述

嗨,我正在尝试重用我从 api 测试返回的字符串,然后在不同的测试中重用它。所以这是被调用的函数:

public void return_fix()throws Exception {
    GetFixtures getfixtures = new GetFixtures();
    getfixtures.get_fixtures_between_dates();
}

这就是函数的工作原理

public void get_fixtures_between_dates() throws Exception {
    String DATE_FORMAT;
    DATE_FORMAT = "YYYY-MM-dd";
    SimpleDateFormat sdf = new SimpleDateFormat(DATE_FORMAT);
    Calendar c1 = Calendar.getInstance(); // today
    String todays_date = sdf.format(c1.getTime());

    String DATE_FORMAT1 = "YYYY-MM-dd";
    SimpleDateFormat sdf1 = new SimpleDateFormat(DATE_FORMAT1);
    Calendar c2 = Calendar.getInstance(); // today
    c2.add(Calendar.DATE, 1);
    String tomorrows_date = sdf1.format(c2.getTime());

    Map<String, String> additional_parameters = new HashMap<>();

    responseBody = call.getFixtureId(todays_date, tomorrows_date).execute();
    String response_body_string = responseBody.body().string();
    String[] tmp = response_body_string.split(",");
    String val1 = tmp[0];
    tmp = tmp[1].split(",");
    //Returns second game ID
    String val2 = tmp[0];
    System.out.println(val2);
}

我试图String val2在同一个测试中使用不同的方法,所以在我运行get_fixtures_between_dates下一个函数后将能够使用字符串,无论如何我可以使用字符串值吗?

标签: javaseleniumtestingautomationautomated-tests

解决方案


返回当前方法中的值:

public String get_fixtures_between_dates() throws Exception {
    String DATE_FORMAT;
    DATE_FORMAT = "YYYY-MM-dd";
    SimpleDateFormat sdf = new SimpleDateFormat(DATE_FORMAT);
    Calendar c1 = Calendar.getInstance(); // today
    String todays_date = sdf.format(c1.getTime());

    String DATE_FORMAT1 = "YYYY-MM-dd";
    SimpleDateFormat sdf1 = new SimpleDateFormat(DATE_FORMAT1);
    Calendar c2 = Calendar.getInstance(); // today
    c2.add(Calendar.DATE, 1);
    String tomorrows_date = sdf1.format(c2.getTime());

    Map<String, String> additional_parameters = new HashMap<>();

    responseBody = call.getFixtureId(todays_date, tomorrows_date).execute();
    String response_body_string = responseBody.body().string();
    String[] tmp = response_body_string.split(",");
    String val1 = tmp[0];
    tmp = tmp[1].split(",");
    //Returns second game ID
    String val2 = tmp[0];
    System.out.println(val2);

return val2
}

在您的其他方法中调用并分配它:

    public String return_fix()throws Exception {

    GetFixtures getfixtures = new GetFixtures();
    String val2 = getfixtures.get_fixtures_between_dates();
}

推荐阅读