簡體   English   中英

LeanFT在隱身模式下打開瀏覽器

[英]LeanFT Opening Browser in Incognito Mode

問題:遺憾的是,C#中的LeanFT無法以隱身模式打開瀏覽器。 我無法在路徑中添加-incognito,因為我沒有管理員權限。 我能做什么? 我在想Sendkeys(“^ + N”); 但不知道如何通過鍵盤做到這一點,或者它是否可以工作,因為瀏覽器已經實例化。

有沒有其他人遇到這個問題? 由於LeanFT不允許隱身模式自動運行,因此我說的非常麻煩。

using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using HP.LFT.SDK;
using HP.LFT.Verifications;
using System.Diagnostics;
using System.Threading;
using HP.LFT.SDK.Web;
using HP.LFT.Report;
using System.Drawing;
namespace Xpathtest
{
[TestClass]
public class LeanFtTest : UnitTestClassBase<LeanFtTest>
{
    //The Browser object on which the test will be run
    IBrowser browser;

    [ClassInitialize]
    public static void ClassInitialize(TestContext context)
    {
        GlobalSetup(context);
    }

    [TestInitialize]
    public void TestInitialize()
    {
        browser = BrowserFactory.Launch(BrowserType.Chrome);

    }

    [TestMethod]
    public void TestMethod1()
    {
        try
        {
            // Navigate to Rally              
            browser.Navigate("-incognito https://rally1.rallydev.com/");
            browser.Sync();
            Thread.Sleep(3000);
            browser.Refresh();
            // Find Username edit box using Xpath
            IEditField userName = browser.Describe<IEditField>(new EditFieldDescription
            {
                XPath = "//input[@id='j_username']"

            });

            userName.SetValue("TEST");

            Thread.Sleep(3000);

            // Find password edit box using Xpath
            IEditField password = browser.Describe<IEditField>(new EditFieldDescription
            {
                XPath = "//input[@id='j_password']"

            });

            password.SetValue("TEST");

            Thread.Sleep(3000);

            IButton submit = browser.Describe<IButton>(new ButtonDescription
            {
                XPath = "//*[@id='login-button']"
            });

            submit.Click();
            browser.FullScreen();
            Image img = browser.GetSnapshot();
            Reporter.ReportEvent("Screenshot of failure", "", Status.Passed, img);
            Thread.Sleep(3000);

        }
        catch (Exception e)
        {
            Assert.Fail("Unexpected Error Occurred while= " + e.Message);
        }

    }

    [TestCleanup]
    public void TestCleanup()
    {
        browser.Close();

    }

    [ClassCleanup]
    public static void ClassCleanup()
    {
        GlobalTearDown();
    }
}
}

您應該使用process.Start啟動Chrome,然后使用browser.Attach描述以附加到打開的瀏覽器。

這是大致的想法:

using System.Diagnostics;
...
Process process = new Process();
// Configure the process using the StartInfo properties.
process.StartInfo.FileName = "chrome";
process.StartInfo.Arguments = "-incognito www.somesite.com";
process.StartInfo.WindowStyle = ProcessWindowStyle.Maximized;
process.Start();

BrowserFactory.Attach(new BrowserDescription
{
    Url = "www.somesite.com"
});
...

但正如Motti 在評論中所說,如果沒有啟用LeanFT擴展, Attach將無法工作 - 這在隱身模式下被禁用

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM