为什么我不需要处理 return 类型的页面对象?

Why do I not need to address a return type of Page Object?

我现在有点疑惑。这个问题可能更像是一个 java 问题而不是一个 selenium 问题,但我不明白这一点。最近,我和我的团队一直在像这样在我们的测试中传递以下页面对象。我们将有一个方法,该方法具有 return 类型的页面对象

public MyAtcMyCarsPage clickManageSavedCarAlerts(){
        wait.until(ExpectedConditions.elementToBeClickable(manageSavedCarAlerts).click();
        return new MyAtcMyCarsPage(driver);
    }

现在在我们的测试脚本中,我们将使用 testng @BeforeClass

实例化我们所有的页面对象
homePage = new HomePage(driver);
footerPage = new FooterPage(driver);

等等..现在这是我不明白的部分..如果我要使用上面的方法,clickManageSavedCarAlerts(),我会做..

myAtcMyCarsPage = alertPage.clickManageSavedCarAlerts();

通过这样做,我正在解决 MyAtcMyCarsPage 的 return 类型。但是,以下内容也适用..

alertPage.clickManageSavedCarAlerts();

这运行良好,没有错误。我忽略了该方法本身具有 return 类型的页面对象这一事实。为什么是这样?是否可以忽略某些 return 类型?

您始终可以忽略方法的 return 值。不只是特定类型,它是一切。

如果您不将其分配给变量,方法会得到 运行 并且结果会被丢弃。