如何在Windows身份验证中的URL中传递\?

时间:2018-10-10 17:30:28

标签: selenium-webdriver

要处理Windows身份验证,一种处理这种情况的方法是通过在URL本身中传递凭据,如下所示:

driver.get('http://domain\username:password@abc.com')

我的用户名包含一个域ex。域\用户名。但是,当我通过https://domain\username:password@example.com URL时,它将转换为'/'。我正在使用C#硒绑定。请提出解决方案以使其正常工作。

1 个答案:

答案 0 :(得分:0)

您需要使用其ASCII值替换任何特殊字符。

  

对于\,它是092

此外,我相信浏览器已不再支持将凭据与url一起传递的语法,如果您使用的是最新版的chrome / firefox浏览器,我相信它不会起作用。

您应该允许浏览器显示凭据警报并使用硒对其进行处理。

[Trait("Order", "")]   
[TestCaseOrderer(DependencyOrderer.TypeName, DependencyOrderer.AssemblyName)]
public partial class OrderTests
{
    [Fact]        
    public void Test0()
    {
        Thread.Sleep(TimeSpan.FromSeconds(1));
    }

    [Fact]
    [TestDependency("Test1", "Test0")]
    public void Test3()
    {
        Thread.Sleep(TimeSpan.FromSeconds(1));
    }
 }

[Trait("Order", "")]
public partial class OrderTests
{
    [Fact]
    public void Test2()
    {
        Thread.Sleep(TimeSpan.FromSeconds(1));            
    }

    [Fact]
    [TestDependency("Test0")]
    public void Test1()
    {
        Thread.Sleep(TimeSpan.FromSeconds(1));
    }
}