SeleniumBasicでチェックボックスの利用  usage_checkbox

リファレンス

 usage_checkboxでは、ブラウザ上のチェックボックスの利用方法を紹介しています。検証用のホームページは、ここを参照しています。参照ページのチェックボックスの初期状態は以下の様にcheckbox 2 にのみチェックが入っています。

  • 利用目的は業務効率化です。(テスト自動化ではありません)
  • ブラウザはGoogleChromeが対象です。(EdgeやFirefoxは対象外)
  • 原文のVBAでは現在エラー発生する場合が多いため、修正を加えてます。
Examples.xlsmの保存場所(ここをクリック)

 Examples.xlsmが保存されている場所は、SeleniumBasicがインストールされているサブフォルダ内になります。SeleniumBasicのインストール完了時に保存フォルダを確認することができます。ただ、大体以下フォルダのどちらかにファイル保存されています。

  • C:\Program Files\Seleniumbasic\Examples\Excel
  • shell:Local AppData\SeleniumBasic\Examples\Excel
目次

チェックボックスの操作

動作の流れは、初期状態にchekbox 2のチェックボックスのチェックが入っている状態から、chekbox 2をクリックして、チェックボックスを外す動作をしています。

Option Explicit
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

以下、コード説明です。
7行目:chekubox 2のチェックボックスの要素取得
8行目:cb.IsSelected=Trueですので、Assert.Trueを通過
9行目:2秒待機
10行目:チェックボックスをクリック(チェックを外す)
11行目:2秒待機
12行目:cb.IsSelected=Falseですので、Assert.Falseを通過

以下がコード実行後の状態です。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

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

目次