【发布时间】:2018-12-13 18:11:52
【问题描述】:
我试图使用我在一个类中使用的变量,然后在不同的类中使用该变量。 所以这是我的代码,它基本上从 url 获取一个 id
public class GameId {
public String game_id() {
String currentURL = Drivers.getDriver().getCurrentUrl();
String[] arrayURL = currentURL.split("/");
int arrLength = arrayURL.length;
final String gameID;
gameID = arrayURL[arrLength - 1];
System.out.println(gameID);
return gameID;
}
}
我试图在不同类的测试中使用它,但它没有给我相同的答案,我试图断言这个游戏 id 包含在不同页面的 url 中,但函数再次运行所以值改变。
public void guest_login_from_pick_screen(){
GameId gameid = new GameId();
WebDriverWait wait = new WebDriverWait(Drivers.getDriver(), 10);
gameid.game_id();
wait.until(ExpectedConditions.urlMatches("https://web-game-stage.sportdec.com/games/"+ gameid.game_id()+"/join/"));
}
我在测试中使用了这两个函数,但我希望在第二个实例中使用第一个实例 (gameid.game_id();) 的值 (fixscreen.guest_login_from_pick_screen();)。这是完整的代码
@Test
public void join_game_already_logged_in () throws Exception {
Header header = new Header();
Thread.sleep(3000);
GameLobby gamelobby = new GameLobby();
gamelobby.clickElementWithName("Test Game");
gamelobby.select_game();
LeaderBoard leaderboard = new LeaderBoard();
GameId gameid = new GameId();
gameid.game_id();
leaderboard.numberOfUsers();
leaderboard.joinGame();
FixturesScreen fixscreen = new FixturesScreen();
fixscreen.guest_login_from_pick_screen();
fixscreen.four_picks_make();
Thread.sleep(4000);
fixscreen.picks_match_total();
fixscreen.submit_picks();
Login login = new Login();
login.select_register_from_login();
Register register = new Register();
register.register_in_pick_screen();
fixscreen.submit_picks();
Thread.sleep(3000);
PickReceipt pickReceipt = new PickReceipt();
pickReceipt.your_in_the_game();
}
【问题讨论】:
标签: java selenium user-interface automation automated-tests