【问题标题】:URL is not passing in cross browser testing code seleniumURL 未通过跨浏览器测试代码 selenium
【发布时间】:2016-03-23 17:14:35
【问题描述】:

我正在尝试编写代码以在 Chrome 和 Firefox 两种浏览器上进行测试,这两个浏览器都可以打开,但 URL 没有通过。
需要帮助以进一步工作,提前致谢。

WebDriver driver;

    @BeforeTest
    @Parameters("browser")

    public void setup(String browser) throws Exception {

        if (browser.equalsIgnoreCase("firefox")) {

            driver = new FirefoxDriver();

            driver.manage().window().maximize();

        } else if (browser.equalsIgnoreCase("chrome")) {

            System.setProperty("webdriver.chrome.driver", "E:\\disha.shah/myWork/eclipse/chromedriver.exe");
            driver = new ChromeDriver();

            driver.manage().window().maximize();


        } else {
            throw new Exception("Browser is not correct");

        }

        // driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);

    }

    @Test
    @Parameters({ "username", "password" })
    public void login(String username, String password) throws InterruptedException {

        driver.get("url goes here");
        driver.findElement(By.id("UserName")).sendKeys(username);
        driver.findElement(By.id("Password")).sendKeys(password);
        driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);
        driver.findElement(By.id("btnLogin")).sendKeys(Keys.RETURN);
    }
}

这是 XML 文件:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >

<suite name="Sample Test Suite" verbose="3" thread-count="2"
    parallel="methods">
    <test name="ChromeTest">

        <parameter name="browser" value="Chrome" />
        <classes>
            <class name="testngDemo.Login">
                <methods>
                    <include name="setup"></include>
                </methods>
            </class>
        </classes>

    </test>

    <test name="FirefoxTest">
        <parameter name="browser" value="Firefox" />
        <classes>
            <class name="testngDemo.Login">
                <methods>
                    <include name="setup"></include>
                </methods>
            </class>
        </classes>
    </test>

    <test name="Login Test">
        <parameter name="username" value="dishashah" />
        <parameter name="password" value="disha1234" />
        <classes>
            <class name="testngDemo.Login">
                <methods>
                    <include name="login"></include>

                </methods>
            </class>
        </classes>
    </test>
</suite>

【问题讨论】:

  • 有谁能告诉我吗

标签: java selenium testng


【解决方案1】:

问题出在 testng.xml 文件上。我对上面的 testng.xml 文件进行了一些更改。 see the updated xml here

【讨论】:

  • 是的..我们也可以把参数标签放在套件标签下面。请在此处查看 xml imgur.com/vy73sQs
  • 但是如果有很多方法及其参数..,我需要以这种方式传递的所有参数都只在 XML 中?
  • 我想如果我们想从 testNG xml 文件中传递参数,那么这是我们可以做的两种方式。如果它回答了你的问题,请投票给这个答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-02-20
  • 1970-01-01
  • 2020-02-26
  • 1970-01-01
  • 1970-01-01
  • 2011-11-17
  • 2013-06-25
相关资源
最近更新 更多