SeleniumBasic AssertClass Seleniumコマンドチェック

リファレンス

概要

Seleniumのコードチェック用のクラス。取得した要素等が期待した内容かチェックし、条件が成立しない場合、エラーを発生させる。

オブジェクト設定

・変数宣言

Dim Assert As New Assert

文法

Assert.[メソッド] <期待値>, <検索対象値>

メソッド・プロパティ

・メソッド

スクロールできます
Name解説Short Example
Contains検索対象値に期待値のテキストが含まれている場合通過。検索対象値期待が含まれていない場合エラーを発生させる。(部分一致)Assert.Contains "Goo", driver.Title
Equals2つのオブジェクトを比較して一致の場合、通過。不一致の場合、エラーを発生させる。(完全一致)Assert.Equals "Google", driver.Title
Fail模擬エラーを発生させるAssert.Fail
FALSE引数の値がFalseの場合、エラーを発生させるAssert.False cb.IsSelected
Matches検索対象値に期待値が含まれている場合通過。検索対象値に期待値が含まれていない場合、エラーを発生させる。正規表現が可能。(部分一致)Assert.Matches "Googl*", driver.Title
NotEquals2つのオブジェクトを比較して不一致の場合、通過。一致の場合、エラーを発生させる。(完全一致)Assert.NotEquals "google", driver.Title
NotMatches検索対象値に期待値が含まれていない場合通過。検索対象値に期待値が含まれている場合、エラーを発生させる。正規表現が可能。(部分一致)Assert.NotMatches "goog", driver.Title
TRUE引数の値がTrueの場合、エラーを発生させるAssert.True cb.IsSelected

※Short Exampleは、動作確認ができたコードを記載しています。

Example

Test_Assert

Private Sub Test_Assert()
On Error GoTo ErrHandle
    Dim driver As New ChromeDriver
    Dim Assert As New Assert
    driver.Get "https://www.google.co.jp"
    
    Assert.Equals "Google", driver.title
    Assert.Contains "Goo", driver.title
    Assert.Matches "Googl*", driver.title
    Assert.NotEquals "google", driver.title
    Assert.NotMatches "goog", driver.title
    Assert.Fail
    
ErrHandle:
    Debug.Print Err.Description
    driver.Quit
End Sub

Handle_Checkbox

Private Sub Handle_Checkbox()
    Dim Assert As New selenium.Assert
    Dim driver As New ChromeDriver
    driver.Get "https://the-internet.herokuapp.com/checkboxes"
    Dim cb As WebElement
    Set cb = driver.FindElementByCss("#checkboxes input:nth-of-type(2)")  'チェックボックス2のElemnt取得
    Assert.True cb.IsSelected  'チェックボックスにチェックが入っているか確認
    driver.Wait 2000
    cb.Click  'チェックボックスをクリック(チェックを外す)
    driver.Wait 2000
    Assert.False cb.IsSelected  'チェックボックスのチェックが外れているかか確認
    Stop
    driver.Quit
End Sub
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

VBAを中心とした自動化、効率化の手法を紹介しています。現在は、SeleniumBasicのexamplesを紹介しています。その内、SeleniumBasic以外の手法も掲載したいと思っております。