質問

私はセレンを使って作成されたテスト方法を持っています、これに似たもの:

[TestFixture]
public class Test_Google
{
        IWebDriver driver;

        [SetUp]
        public void Setup()
        {
            driver = new InternetExplorerDriver();
        }

        [TearDown]
        public void Teardown()
        {
            driver.Quit();
        }

    [Test]
    public void TestSearchGoogleForTheAutomatedTester()
        {
            //Navigate to the site
        driver.Navigate().GoToUrl("http://www.google.co.uk");
        //Find the Element and create an object so we can use it
        IWebElement queryBox = driver.FindElement(By.Name("q"));
        //Work with the Element that's on the page
        queryBox.SendKeys("The Automated Tester");
            queryBox.SendKeys(Keys.ArrowDown);
        queryBox.Submit();
        //Check that the Title is what we are expecting
        Assert.True(driver.Title.IndexOf("The Automated Tester") > -1);
    }
}
.

試験が走るとき、それはIEを開き、そのテストを実行します。

複数のテスト備品にわたるこのような200のテスト方法があると想像している。これは、IEは何度も開閉されていなければならない(1つのブラウザはテストフィクスチャごとに開かれるため、テストフィクスチャ)。

ブラウザを開く必要なしにSeleniumシステムテストを実行する方法は?

例えば、Winforms WebブラウザコントロールでSelenium Testsを実行するためのWindowsサービスを開発することが可能であると考えていました。その場合、ブラウザをたびに開く必要がなく、テストが実行されることがあります。自動かつ見ずに。これを実装する方法がわからない?

または他のより良い既知の方法はありますか?

ありがとう、

役に立ちましたか?

解決

いいえ。SeleniumはJavaScriptで書かれています。実際のブラウザで実行されるように設計されています。実際のブラウザとの互換性をテストするように設計されています。ブラウザをシミュレートするテストを実行するように設計された他の様々なツールがあります。あなたは htmlunit または canooのWebtest

これがあなたを助けることを願っています。

他のヒント

あなたはXLTを試しましたか? オープンブラウザが全く必要ではありません

あなたが好きなら、1つのブラウザインスタンスですべてのテストを実行できます。WebDriverインスタンスを各テストに渡すだけです。TestCaseがすべてWebDriverにアクセスできる場所から、Singelton WebDriverを静的クラスに持つことが好きです。を維持するためのセッションを手に入れた場合は、うまく機能し、便利です。

DRIVER= NEW HTMLUNITDRIVER(TRUE); java.util.logging.logger.getLogger( "com.gargoylesoftware")。SetLevel(Level.off);

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top