2021-10-31 13:56:03 +08:00
|
|
|
from seleniumbase import BaseCase
|
2023-02-03 13:27:36 +08:00
|
|
|
BaseCase.main(__name__, __file__)
|
2023-01-04 08:58:42 +08:00
|
|
|
|
2021-10-31 13:56:03 +08:00
|
|
|
|
|
|
|
class TestMFALogin(BaseCase):
|
|
|
|
def test_mfa_login(self):
|
|
|
|
self.open("https://seleniumbase.io/realworld/login")
|
|
|
|
self.type("#username", "demo_user")
|
|
|
|
self.type("#password", "secret_pass")
|
2022-04-26 22:49:00 +08:00
|
|
|
self.enter_mfa_code("#totpcode", "GAXG2MTEOR3DMMDG") # 6-digit
|
2022-05-14 04:19:05 +08:00
|
|
|
self.assert_text("Welcome!", "h1")
|
2022-04-26 22:49:00 +08:00
|
|
|
self.highlight("img#image1") # A fancier assert_element() call
|
2022-10-14 15:58:18 +08:00
|
|
|
self.click('a:contains("This Page")') # Use :contains() on any tag
|
2022-12-02 15:02:35 +08:00
|
|
|
self.save_screenshot_to_logs() # ("./latest_logs" folder for test)
|
2022-10-14 15:58:18 +08:00
|
|
|
self.click_link("Sign out") # Link must be "a" tag. Not "button".
|
2022-04-26 22:49:00 +08:00
|
|
|
self.assert_element('a:contains("Sign in")')
|
2022-05-14 04:19:05 +08:00
|
|
|
self.assert_exact_text("You have been signed out!", "#top_message")
|