首先,请原谅初学者的问题。我是 Java 和 Selenium Webdriver 的新手。
我正在通过尝试测试 CMS 应用程序来学习 Webdriver。 CMS 的概念是创建文章并通过工作流程发送它们。因此,编辑可能会创建一篇文章并发送给超级用户。因此,我作为编辑器创建一篇文章,并使用 sendKeys 文本填充“标题”字段并附加创建日期:
public class EditorArticleCreator {
private static WebDriver driver;
private static String baseURL = TestEnv.getUrl();
static WebDriverWait wait;
Date date = new Date();
static String articleName;
public static String getArticleName(){
return articleName;
}
//some code and then:
driver.findElement(By.cssSelector("#Article_Title")).sendKeys("New_Article_" + date.toString());
我想要做的是将创建的标题的字符串值传递到一个变量中,然后我可以在 SuperUser 的类中检索该变量(通过 Get 方法)。
public class EditArticleSuperUser {
EditorArticleCreator.getArticleName();
}
这样,我希望当我以超级用户身份登录 WebDriver 时,他们会选择正确的文章,因为完整的字符串将存储在articleName 字段中。
这是最好的方法吗?如何从 driver.findElement 获取字符串值?
您可以使用 getAttribute 来获取文本输入的 value 属性:
WebElement articleTitleField = driver.findElement(By.cssSelector("#Article_Title"));
articleTitleField.sendKeys("New_Article_" + date.toString());
articleName = articleTitleField.getAttribute("value");
或者 MrTi 建议的articleTitleField.getText() 也可以!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)