SilkTest 技術情報(FAQ)


1つのシナリオでクロスブラウザのテストを行う

Visual Studioのプラグインとして組み込めるSilk4NetのVB.NETを使い、1つのテストシナリオを利用してInternet Explorer、Firefox、Google Chromeのクロスブラウザテストを行うサンプルスクリプトです。

Imports System
Imports System.Collections.Generic
Imports Microsoft.VisualStudio.TestTools.UnitTesting
Imports SilkTest.Ntf
Imports SilkTest.Ntf.XBrowser

<SilkTestClass()> Public Class UnitTest1

    Private ReadOnly _desktop As Desktop = Agent.Desktop

    <TestMethod()> Public Sub xBrwoserTestIE()
        RunBrowserTest(BrowserType.InternetExplorer)
    End Sub

    <TestMethod()> Public Sub xBrwoserTestChrome()
        RunBrowserTest(BrowserType.GoogleChrome)
    End Sub

    <TestMethod()> Public Sub xBrwoserTestFF()
        RunBrowserTest(BrowserType.Firefox)
    End Sub


    Private Sub RunBrowserTest(ByVal bType As BrowserType)
        Dim BrBaseState As New BrowserBaseState(bType, "demo.borland.com/InsuranceWebExtJS/index.jsf")
        Dim BrowserApp As BrowserApplication = BrBaseState.Execute()

        With BrowserApp
            With .BrowserWindow()
                .DomListBox("//SELECT[@id='quick-link:jump-menu']").Select("Auto Quote")
                .DomTextField("//INPUT[@id='autoquote:zipcode']").Click(MouseButton.Left, New Point(79, 7))
                .DomTextField("//INPUT[@id='autoquote:zipcode']").TypeKeys("92121")
                .DomTextField("//INPUT[@id='autoquote:e-mail']").Click(MouseButton.Left, New Point(72, 8))
                .DomTextField("//INPUT[@id='autoquote:e-mail']").TypeKeys("test@test.com")
                .DomRadioButton("//INPUT[@id='autoquote:vehicle:0']").Select()
                .DomButton("//INPUT[@id='autoquote:next']").Click(MouseButton.Left, New Point(40, 10))
                .DomTextField("//INPUT[@id='autoquote:age']").Click(MouseButton.Left, New Point(50, 10))
                .DomTextField("//INPUT[@id='autoquote:age']").TypeKeys("<Backspace>42")
                .DomRadioButton("//INPUT[@id='autoquote:gender:0']").Select()
                .DomRadioButton("//INPUT[@id='autoquote:type:1']").Select()
                .DomButton("//INPUT[@id='autoquote:next']").Click(MouseButton.Left, New Point(35, 11))
                .DomTextField("//INPUT[@id='autoquote:year']").Click(MouseButton.Left, New Point(75, 13))
                .DomTextField("//INPUT[@id='autoquote:year']").TypeKeys("<Backspace>2010")
                .DomElement("//IMG[@src='data:image/gif;base6*'][1]").Click(MouseButton.Left, New Point(10, 5))
                .DomElement("//DIV[@textContents='Toyota']").Click(MouseButton.Left, New Point(47, 6))
                .DomElement("//IMG[@src='data:image/gif;base6*'][2]").Click(MouseButton.Left, New Point(5, 12))
                .DomElement("//DIV[@textContents='Camry']").Click(MouseButton.Left, New Point(39, 8))
                .DomRadioButton("//INPUT[@id='autoquote:finInfo:1']").Select()
                .DomButton("//INPUT[@id='autoquote:next']").Click(MouseButton.Left, New Point(32, 6))
                Assert.AreEqual("USD 1.270,00", .DomElement("//B[@textContents='USD 1.270,00']").Text)
                .DomButton("//INPUT[@id='quote-result:purchas*']").Click(MouseButton.Left, New Point(36, 7))
                .DomLink("//A[@textContents='Home'][1]").Click(MouseButton.Left, New Point(51, 15))
            End With
        End With
    End Sub

End Class

免責事項

ここで紹介したスクリプトは説明のためのサンプルであり、製品の一部ではございません。スクリプトが実際に動作するか、御社業務に適合するかなどに関しまして、一切の保証はございません。 スクリプト、説明、その他すべてについて、無謬性は保障されません。

ここで紹介するスクリプトの一部、もしくは全部について、弊社に断りなく、御社スクリプトの内部に組み込み、そのままご利用頂いても構いません。

本スクリプトの一部もしくは全部を二次的著作物に対して引用する場合、著作権法の精神に基づき、適切な扱いを行ってください。