Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/361.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
Java:使用SeleniumWebDriver将值从一个类传递到另一个类_Java_Class_Selenium_Scope_Webdriver - Fatal编程技术网

Java:使用SeleniumWebDriver将值从一个类传递到另一个类

Java:使用SeleniumWebDriver将值从一个类传递到另一个类,java,class,selenium,scope,webdriver,Java,Class,Selenium,Scope,Webdriver,我最近问了一个问题: 因此,我实现了接受的答案,它允许我(或者我认为是这样)将字符串的值传递到变量(articleName)中。然后我想做的是将这个变量传递到下一个类中,以便超级用户可以通过字符串articleName找到文章,然后使用它(超级用户的仪表板中有许多文章) 然而,我收到的信息是: java.lang.IllegalArgumentException:链接文本为空时找不到元素。 位于org.openqa.selenium.By.linkText(By.java:63) 显然,我没有

我最近问了一个问题:

因此,我实现了接受的答案,它允许我(或者我认为是这样)将字符串的值传递到变量(articleName)中。然后我想做的是将这个变量传递到下一个类中,以便超级用户可以通过字符串articleName找到文章,然后使用它(超级用户的仪表板中有许多文章)

然而,我收到的信息是: java.lang.IllegalArgumentException:链接文本为空时找不到元素。 位于org.openqa.selenium.By.linkText(By.java:63)

显然,我没有正确地传递值。我可能比自己跑得快,因为我是一个初学者,所以,如果有人能解释我的错误的基本前提,我将非常感激!下面是代码片段:

//第1类

//一些代码,然后

    WebElement articleTitleField =driver.findElement(By.cssSelector("#Article_Title"));
    articleTitleField.sendKeys("Editor_Feature_Article_" + date.toString());
    articleName = articleTitleField.getText();
//第二类

//一些代码,然后

    WebElement newarticle = driver.findElement(By.linkText(articleName));
    assertEquals("finds new article", articleName, newarticle.getText());

(By.linkText(articleName))
articleName
null
then。你需要调试这个。从
articletTitleField.getText()返回的内容。。。?它是什么元素?在中间代码块中,代码必须在<代码> EdgRealToReCurror < /Code >中,测试不能声明字符串OrthLeNeN<代码>,并且该测试必须在2级的测试之前运行。所有这些都是真的吗?如果
articleName
静态的
,那么您不需要执行
EditorArticleCreator.getArticleName()
,只需执行
EditorArticleCreator.articleName
嗨,很抱歉延迟回复。Arran-'null'从articleTitleField.getText()返回;虽然我不确定为什么。Ti先生-我认为你说的都是真的。毫无疑问,有一种更简单、更优雅的方法可以做到这一点。本质上,我只是想创建一个新的文章标题,并附上日期,将其传递到一个字段中,然后让测试2(同一个包中的单独类)访问该字符串,以便它可以查询DOM并按名称查找文章。这需要调试。您还将所有内容设置为
静态
,这将构成问题的基础。你为什么这么做?
public class EditArticleSuperUser {

private static WebDriver driver;
public static String baseURL = TestEnv.getUrl();
public static String username = User.getUsernameSuperUser();
public static String password = User.getPasswordSuperUser();
static WebDriverWait wait;
public static String articleName = EditorArticleCreator.getArticleName();
    WebElement newarticle = driver.findElement(By.linkText(articleName));
    assertEquals("finds new article", articleName, newarticle.getText());