Selenium测试 - 保存在多个测试运行会议

问题描述 投票:3回答:3

我有以下问题。当我开始我的硒测试,去那里进行实际测试的一部分,我需要启动浏览器,登录,做一些其他的操作,然后说到我要测试的一部分。

难道就没有办法做的第一部分只有一次,离开了会议,并在浏览器中打开。而对于接下来的试运行只能继续本次会议,无需启动。

所以基本上我想有一个测试初始化​​,并离开会议开幕。并使用此初始化会话等检查,每次重用会话。

我使用Java和硒RC。

谢谢!

session selenium selenium-rc
3个回答
1
投票

它在你的环境取决于一点。我使用C#与硒RC(因此NUnit的测试框架)。由于您使用的Java(大概JUnit的),它的工作方式相同。双方的JUnit和NUnit使您可以指定每个测试之前执行,每次测试后,每套房之前,或每间套房都经过特殊代码。

在你的情况,你要提供代码套件之前运行(一套简单的是你所有的测试用例在一个命名空间(C#)或类(Java)的集合)。在C#中我用这样的代码 - 的[TextFixtureSetUp]指令是什么让NUnit的认识到这一点的套房设置代码。

   [TestFixtureSetUp]
    public void SetupTest()
    {
        selenium = Setup.StartSelenium();
        Setup.Login();
        Setup.Preliminaries();
    }

Java中的相同牌号是使用@BeforeClass属性,如

public class Example {
    @BeforeClass
    public static void onlyOnce() {
       ...
    }
 }

我最近的文章Web Testing with Selenium Sushi: A Practical Guide and Toolset非常注重C#,但它可以为你提供,你可以应用到你的Java工作的一些总体思路。


0
投票

我会建议使用testng它可以让你分别以@BeforeClass,@BeforeSuite只有课前或测试套件使用像某些一段代码的调用前处理Java注解。在这里您可以定义硒服务器实例,做浏览器调用一个类测试套件之前(也有很多其他的选择也可以),然后这可能在随后的测试方法来重复使用。


0
投票

在一个行:您可以使用该Firefox配置文件。

详情:1.登录在Firefox手动(使用,记住我你的网站的选择,如果它的存在,否则就应该没问题。)2.转到Firefox菜单>帮助>疑难解答信息>配置文件文件夹(点击它)。 3.当你调用您硒的webdriver(不知道RC虽然),使用此

ProfilesIni profileIni = new ProfilesIni();
FirefoxProfile profile = profileIni.getProfile("<YOUR PATH TO FF PROFILE FROM STEP 2>");
this.driver = new FirefoxDriver(profile);

这样,您就可以直接登录到您的帐户。这也是快许多数据是从浏览器缓存中采摘新鲜不像Firefox配置

© www.soinside.com 2019 - 2024. All rights reserved.