当前位置: 首页 > 知识库问答 >
问题:

在同一窗口中打开Selenium Webdriver测试

范霄
2023-03-14

我有几十个Selenium Webdriver测试。我想一次完成所有的任务。如何运行测试,使每个测试都不会打开新的Webdriver浏览器窗口?

共有1个答案

段铭晨
2023-03-14

您必须在@BeforeClass/@AfterClass中启动/拆除您的网络驱动程序,并在所有测试中使用此网络驱动程序。

public class MyTest {

    WebDriver driver;

    @BeforeClass
    public static void setUpClass() {
        driver = new RemoteWebDriver(new URL(hubAddress), capability);
    }

    @AfterClass
    public static void setDownClass() {
         driver.quit();
    }

    @Test 
    public void Test1(){
         driver.get(...);
    }

    @Test 
    public void Test2(){
         driver.get(...):
    }
}

或者在TestSuite中使用相同的@BeforeClass/@AfterClass使其静态化:

@RunWith(Suite.class)
@SuiteClasses({ Test1.class, Test2.class})
public class MyTestSuite {

    public static WebDriver driver;

    @BeforeClass
    public static void setUpClass() {
        driver = new RemoteWebDriver(new URL(hubAddress), capability);
    }

    @AfterClass
    public static void setDownClass() {
         driver.quit();
    }
}

public class Test1 {

    @Test 
    public void Test1(){
         MyTestSuite.driver.get(...);
    }
}
 类似资料:
  • 问题内容: 我想在包含该链接页面的同一窗口和同一选项卡中打开一个链接。 当我尝试使用打开链接时,它将在新选项卡中打开,而不是在同一窗口的同一选项卡中打开。 问题答案: 你需要使用name属性: 编辑:URL应该在协议之前。没有它,则尝试打开相对URL。经过Chrome 59,Firefox 54和IE 11的测试。

  • 我的目标是让一系列测试一个接一个地运行。我希望有一个“登录”脚本让用户登录,然后在同一窗口/驱动程序中继续执行以下脚本。我使用的是TestNG,所以我的测试套件设置在TestNG.xml文件中(如果有帮助的话)。 我要运行的下一个脚本:

  • 我试图创建一个程序,它有一个tkinter窗口打开,然后当你按下一个按钮,它关闭tkinter窗口,打开一个pyplay窗口。然而,当我点击按钮打开pyplay窗口时,它会打开pyplay窗口,而tkinter窗口保持打开状态。 代码: 我还尝试使用: 我怎样才能解决这个问题?(我正在MacOS 11.1上运行Python 3.7.7)

  • 我正在使用Pygame模块制作一个简单的游戏。我需要Tkinter窗口与Pygame窗口一起打开。 每当我试图打开两个窗口时,第二个窗口只有在我杀死第一个窗口后才会打开。 现在,我能想到的唯一解决方案是使用多线程。但是,我无法实现它。 我该怎么做呢?我真的很感激这里的帮助。谢谢你!

  • 我正在处理一个(父)网页的需求,该网页有一些链接,比如Link1、Link2和Link3。当我单击链接1(将在活动窗口1(子窗口)的新窗口中打开)时,当我单击链接2/Link3时,页面应在同一窗口(窗口1)中打开。 问:Javascript/Jquery/Ajax中是否有实现此功能的方法。请分享你对此的宝贵想法。 注意:如果没有打开任何链接,则应弹出一个新窗口。我知道我们在HTML中有选项targ

  • 我尝试了各种方法来打开在.js文件中导入的.ftl文件中的新窗口中的链接,但都不成功。 下面是.js中的代码