我的课上一共有四种方法
我已经创建了一个静态WebDriver
对象
static WebDriver driver;
方法1:登录站点(这里我初始化WebDriver=new-FirefoxDriver()
)
方法2:单击站点中的链接(使用WebDriver驱动程序),单击后,该链接将在同一浏览器的“新建”选项卡中打开
方法三:
现在在方法3中,我切换到新选项卡,并在新选项卡中使用web元素执行一些操作
下面的代码用于切换到新标签
ArrayList<String> tabss = new ArrayList<String> (driver.getWindowHandles());
driver.switchTo().window(tabss.get(1));
方法4:我想再次在新选项卡中执行更多操作
现在我需要方法4中方法3中使用的相同驱动程序实例(选项卡)。
我怎么知道
如果我在方法4中使用“driver”,则为空。
public class download {
static WebDriver driver;
@Test
public static void login() throws InterruptedException
{
driver = new FirefoxDriver();
driver.manage().window().maximize();
driver.get("__site__");
driver.findElement(By.id("login-email")).sendKeys("__username__");
driver.findElement(By.id("login-password")).sendKeys("__password__");
driver.findElement(By.id("login-submit")).click();
Thread.sleep(3000);
}
@Test
public static void navigatetolearningpage() throws InterruptedException
{
driver.findElement(By.xpath("//div[@class='relative ember-view']")).click();
Thread.sleep(3000);
}
@Test
public static void search() throws InterruptedException, AWTException
{
ArrayList<String> tabss = new ArrayList<String> (driver.getWindowHandles());
driver.switchTo().window(tabss.get(1));
driver.findElement(By.xpath("//input[@type='text']")).sendKeys("__searchkeyword__");
Thread.sleep(3000);
driver.findElement(By.xpath("//input[@type='text']")).sendKeys(Keys.RETURN);
Thread.sleep(3000);
driver.findElement(By.xpath("//div[@class='search-facet__label']")).click();
}
@Test
public static void course_list() throws InterruptedException
{
//This driver will print as NULL
System.out.println("last method:"+driver);
}
}
测试的顺序无法保证,因此需要在测试开始时初始化驱动程序
将初始化代码移动到驱动程序的声明中
:
static WebDriver driver = new FirefoxDriver();
编辑
在@Laazo评论之后,我认为这比将其添加到@BeforeClass
要好,因为如果您切换到TestNG框架,您将需要将JUnit5更改或升级到@BeforeAll
问题内容: 我想从一个类到另一个类调用一个方法,不知道在不扩展包含该方法的类的情况下是否可行。我尝试导入包,那样我认为应该允许使用该方法,因为它是一个公共方法,但是并不成功。 试图使用此链接作为参考,但我不理解(因为它是android的应用。) 伪代码举例说明 问题答案: 其他方法可能是,为其他类创建对象,然后在该对象上调用方法。像下面这样。
问题内容: 我是python的新手。我试图在类中将值从一种方法传递给另一种方法。我搜索了该问题,但无法获得适当的解决方案。因为在我的代码中,“ if”正在调用类的方法“ on_any_event”,而该方法反过来应该调用我的另一个方法“ dropbox_fn”,该方法利用了“ on_any_event”中的值。如果“dropbox_fn”方法在类之外,它将起作用吗? 我将用代码说明。 这里的主要问
问题内容: 在Bruce Eckel的“ Thinking In Java,第四版”的第428页(有关类型信息的章节)中,具有以下示例: 也许我有点累,但是我看不到add()方法中对add()的调用是如何工作的。我一直认为它应该有一个引用,或者是一个静态方法(并且我在ArrayList或List中找不到静态add())。我想念什么? 我只是为自己测试,发现这可行: 问题答案: Java为这样的方法
我刚刚开始使用JProfiler(版本11.0.1)。在分析了我的测试应用程序(检测)后,我转到“CPU视图- A类 B类 所以,我的问题是在哪里寻找从ClassA发送到ClassB的数据大小? 提前谢谢。
我创建了两个类:和。下面是进行计算的方法: 这里是一个调用并显示结果的函数,不幸的是,我无法根据这本书要求它运行的方式来运行它。 任何提示都会帮助我在我的再教育过程中。
我的Java包中有四个类。只有一个类具有方法。 当我运行方法时,我如何运行这四个类中的所有方法? 以下是我的课程: 第一类。JAVA 第二类。爪哇 第三类。JAVA 样品。JAVA