Skip to content

TestUsersTab

Модуль тестов вкладки 'Пользователи'.

Содержит тесты для проверки функциональности работы с пользователями системы.

TestUsersTab

Класс тестов для проверки вкладки 'Пользователи'.

Тесты покрывают следующие сценарии: 1. test_users_tab_content: Проверяет содержимое вкладки 'Пользователи' 2. test_users_tab_toolbar_buttons: Проверяет кнопки на панели инструментов 3. test_add_user_window_content: Проверяет содержимое окна добавления пользователя 4. test_add_user_window_close_buttons: Проверяет кнопки закрытия окна добавления 5 test_edit_user_window_content: Проверяет содержимое окна редактирования 6. test_edit_user_window_close_buttons: Проверяет кнопки закрытия окна редактирования 7. test_add_and_delete_user: Проверяет добавление и удаление пользователя 8. test_add_AD_user: Проверяет добавление пользователя Active Directory 9. test_reset_password: Проверяет сброс пароля пользователя 10.test_edit_user_role: Проверяет изменение роли пользователя

Source code in tests\e2e\test_users_tab.py
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
class TestUsersTab:
    """Класс тестов для проверки вкладки 'Пользователи'.

    Тесты покрывают следующие сценарии:
    1. test_users_tab_content: Проверяет содержимое вкладки 'Пользователи'
    2. test_users_tab_toolbar_buttons: Проверяет кнопки на панели инструментов
    3. test_add_user_window_content: Проверяет содержимое окна добавления пользователя
    4. test_add_user_window_close_buttons: Проверяет кнопки закрытия окна добавления
    5 test_edit_user_window_content: Проверяет содержимое окна редактирования
    6. test_edit_user_window_close_buttons: Проверяет кнопки закрытия окна редактирования
    7. test_add_and_delete_user: Проверяет добавление и удаление пользователя
    8. test_add_AD_user: Проверяет добавление пользователя Active Directory
    9. test_reset_password: Проверяет сброс пароля пользователя
    10.test_edit_user_role: Проверяет изменение роли пользователя
    """

    @pytest.fixture(scope="function", autouse=True)
    def setup(self, browser: Page) -> None:
        """Настраивает тестовое окружение.

        Args:
            browser: Экземпляр страницы Playwright.
        """

        lp = LoginPage(browser)
        lp.do_login()

        mp = MainPage(browser)
        mp.should_be_navigation_panel()
        mp.click_main_navigation_panel_item("Настройки")
        mp.click_subpanel_item("Пользователи")

    @pytest.fixture(scope="function")
    def cleanup_users(self, browser: Page) -> None:
        """Фикстура для очистки тестовых пользователей и их сеансов после теста."""
        yield

        # Выход из системы текущего пользователя
        mp = MainPage(browser)
        mp.do_logout()

        # Авторизация администратором для очистки
        login_page = LoginPage(browser)
        login_page.do_login()

        # Удаляем тестовых пользователей
        self._cleanup_test_users(browser)

    def _cleanup_test_users(self, browser: Page) -> None:
        """Удаляет тестовых пользователей."""
        mp = MainPage(browser)
        mp.click_main_navigation_panel_item("Настройки")
        mp.click_subpanel_item("Пользователи")
        ut = UsersTab(browser)

        # Удаляем тестовых пользователей
        test_users = ["TestUser", "TestUserAutoOperator", "TestUserAutoAdmin"]

        for user_name in test_users:
            # Проверяем существует ли пользователь и удаляем его
            user_index = ut.find_user_in_table(user_name, "Администратор")
            if user_index != -1:
                ut.open_edit_user_page_by_user(user_name, "Администратор")
                ut.delete_user(user_name)


    def test_users_tab_content(self, browser: Page) -> None:
        """Проверяет содержимое вкладки 'Пользователи'.

        Args:
            browser: Экземпляр страницы Playwright.
        """

        ut = UsersTab(browser)
        ut.should_be_toolbar()
        ut.should_be_users_table()
        ut.check_users_table_content(True)

    def test_users_tab_toolbar_buttons(self, browser: Page) -> None:
        """Проверяет кнопки на панели инструментов.

        Args:
            browser: Экземпляр страницы Playwright.
        """

        ut = UsersTab(browser)
        ut.should_be_toolbar_buttons()

    # @pytest.mark.develop
    def test_add_user_window_content(self, browser: Page) -> None:
        """Проверяет содержимое окна добавления пользователя.

        Args:
            browser: Экземпляр страницы Playwright.
        """

        ut = UsersTab(browser)
        ut.open_add_user_window()
        ut.check_add_user_window_content()
        ut.transform_to_add_AD_user_window()
        ut.check_add_AD_user_window_content()

    def test_add_user_window_close_buttons(self, browser: Page) -> None:
        """Проверяет кнопки закрытия окна добавления.

        Args:
            browser: Экземпляр страницы Playwright.
        """

        ut = UsersTab(browser)
        ut.open_add_user_window()
        ut.close_add_user_window_by_toolbar_button()

        ut.open_add_user_window()
        ut.close_add_user_window()

        ut.open_add_user_window()
        ut.transform_to_add_AD_user_window()
        ut.close_add_AD_user_window_by_toolbar_button()

        ut.open_add_user_window()
        ut.transform_to_add_AD_user_window()
        ut.close_add_AD_user_window()

    def test_edit_user_window_content(self, browser: Page) -> None:
        """Проверяет содержимое окна редактирования.

        Args:
            browser: Экземпляр страницы Playwright.
        """

        ut = UsersTab(browser)
        user_name, role = ut.open_edit_user_page_by_index(0)
        ut.check_edit_user_window_content(user_name, role)

    def test_edit_user_window_close_buttons(self, browser: Page) -> None:
        """Проверяет кнопки закрытия окна редактирования.

        Args:
            browser: Экземпляр страницы Playwright.
        """

        ut = UsersTab(browser)
        user_name, _ = ut.open_edit_user_page_by_index(0)
        ut.close_edit_user_window_by_toolbar_button(user_name)
        user_name, _ = ut.open_edit_user_page_by_index(0)
        ut.close_edit_user_window(user_name)

    # @pytest.mark.develop
    def test_add_and_delete_user(self, browser: Page, cleanup_users: None) -> None:
        """Проверяет добавление и удаление пользователя.

        Args:
            browser: Экземпляр страницы Playwright.
            cleanup_users: Фикстура для автоматического удаления пользователя после теста.
        """

        user_data: Dict[str, str] = {"name": "TestUser", "role": "Администратор", "password": "987654"}

        mp = MainPage(browser)
        ut = UsersTab(browser)

        # Проверяем, есть ли такой пользователь
        user_exists = ut.find_user_in_table(user_data["name"], user_data["role"]) != -1

        if not user_exists:
            # Создаем пользователя впервые
            ut.open_add_user_window()
            success = ut.add_new_user(user_data)

            if success:
                # Ждем обновления таблицы с использованием ожиданий Playwright
                browser.wait_for_timeout(2000)

                # Проверяем наличие пользователя в таблице
                user_found = ut.find_user_in_table(user_data["name"], user_data["role"]) != -1
                if not user_found:
                    # Если пользователь не найден, обновляем страницу
                    browser.reload()
                    browser.wait_for_timeout(2000)
            else:
                ut.close_add_user_window()

        # Пытаемся создать такого же пользователя снова
        ut.open_add_user_window()
        success_second = ut.add_new_user(user_data)

        # Должно вернуться False при попытке создания существующего пользователя
        assert not success_second, "Ожидалась ошибка при создании существующего пользователя"

        ut.open_edit_user_page_by_user(user_data["name"], user_data["role"])
        ut.delete_user(user_data["name"])
        mp.click_subpanel_item("Пользователи")
        mp.click_subpanel_item("Пользователи")
        ut.should_not_be_user_in_table(user_data["name"], user_data["role"])

    # @pytest.mark.develop
    def test_add_AD_user(self, browser: Page, cleanup_users: None) -> None:
        """Проверяет добавление пользователя Active Directory.

        Args:
            browser: Экземпляр страницы Playwright.
            cleanup_users: Фикстура для автоматического удаления пользователя после теста.
        """

        user_data: Dict[str, str] = {"auth_type":"active_directory",
                                     "group": "Администраторы",
                                     "name": "Администратор",
                                     "role": "Администратор"}

        ut = UsersTab(browser)

        ut.open_add_user_window()
        ut.add_new_user(user_data)

    def test_reset_password(self, browser: Page, cleanup_users: None) -> None:
        """Проверяет сброс пароля пользователя.

        Args:
            browser: Экземпляр страницы Playwright.
            cleanup_users: Фикстура для автоматического удаления пользователя после теста.
        """

        user_data: Dict[str, str] = {"name": "TestUserAutoAdmin", "role": "Администратор", "password": "123456"}

        mp = MainPage(browser)
        ut = UsersTab(browser)

        ut.open_add_user_window()
        ut.add_new_user(user_data)
        mp.click_subpanel_item("Пользователи")
        mp.click_subpanel_item("Пользователи")
        ut.open_edit_user_page_by_user(user_data["name"], user_data["role"])
        new_password = ut.reset_password(user_data["name"])

        if len(new_password) == 0:
            assert False, "Unsuccessful password reset"

        new_lp = LoginPage(browser)
        new_lp.do_login(username=user_data["name"], password=new_password)
        new_mp = MainPage(browser)
        new_mp.do_logout()
        lp_1 = LoginPage(browser)
        lp_1.do_login()
        mp_1 = MainPage(browser)
        mp_1.should_be_navigation_panel()
        mp_1.click_main_navigation_panel_item("Настройки")
        mp_1.click_subpanel_item("Пользователи")
        ut_1 = UsersTab(browser)
        ut_1.open_edit_user_page_by_user(user_data["name"], user_data["role"])
        ut_1.delete_user(user_data["name"])
        mp_1.click_subpanel_item("Пользователи")
        mp_1.click_subpanel_item("Пользователи")
        ut_1.should_not_be_user_in_table(user_data["name"], user_data["role"])

    def test_edit_user_role(self, browser: Page, cleanup_users: None) -> None:
        """Проверяет изменение роли пользователя.

        Args:
            browser: Экземпляр страницы Playwright.
            cleanup_users: Фикстура для автоматического удаления пользователя после теста.
        """

        user_data: Dict[str, str] = {"name": "TestUserAutoOperator", "role": "Оператор", "password": "123245"}

        mp = MainPage(browser)
        ut = UsersTab(browser)

        ut.open_add_user_window()
        ut.add_new_user(user_data)
        mp.click_subpanel_item("Пользователи")
        mp.click_subpanel_item("Пользователи")
        ut.open_edit_user_page_by_user(user_data["name"], user_data["role"])
        new_user_data = {"role": "Контактное лицо"}
        ut.edit_user(user_data["name"], new_user_data)
        mp.click_subpanel_item("Пользователи")
        mp.click_subpanel_item("Пользователи")
        ut.should_be_user_in_table(user_data["name"], new_user_data["role"])
        ut.open_edit_user_page_by_user(user_data["name"], new_user_data["role"])
        ut.delete_user(user_data["name"])
        mp.click_subpanel_item("Пользователи")
        mp.click_subpanel_item("Пользователи")
        ut.should_not_be_user_in_table(user_data["name"], new_user_data["role"])

cleanup_users(browser)

Фикстура для очистки тестовых пользователей и их сеансов после теста.

Source code in tests\e2e\test_users_tab.py
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
@pytest.fixture(scope="function")
def cleanup_users(self, browser: Page) -> None:
    """Фикстура для очистки тестовых пользователей и их сеансов после теста."""
    yield

    # Выход из системы текущего пользователя
    mp = MainPage(browser)
    mp.do_logout()

    # Авторизация администратором для очистки
    login_page = LoginPage(browser)
    login_page.do_login()

    # Удаляем тестовых пользователей
    self._cleanup_test_users(browser)

setup(browser)

Настраивает тестовое окружение.

Parameters:

Name Type Description Default
browser Page

Экземпляр страницы Playwright.

required
Source code in tests\e2e\test_users_tab.py
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
@pytest.fixture(scope="function", autouse=True)
def setup(self, browser: Page) -> None:
    """Настраивает тестовое окружение.

    Args:
        browser: Экземпляр страницы Playwright.
    """

    lp = LoginPage(browser)
    lp.do_login()

    mp = MainPage(browser)
    mp.should_be_navigation_panel()
    mp.click_main_navigation_panel_item("Настройки")
    mp.click_subpanel_item("Пользователи")

test_add_AD_user(browser, cleanup_users)

Проверяет добавление пользователя Active Directory.

Parameters:

Name Type Description Default
browser Page

Экземпляр страницы Playwright.

required
cleanup_users None

Фикстура для автоматического удаления пользователя после теста.

required
Source code in tests\e2e\test_users_tab.py
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
def test_add_AD_user(self, browser: Page, cleanup_users: None) -> None:
    """Проверяет добавление пользователя Active Directory.

    Args:
        browser: Экземпляр страницы Playwright.
        cleanup_users: Фикстура для автоматического удаления пользователя после теста.
    """

    user_data: Dict[str, str] = {"auth_type":"active_directory",
                                 "group": "Администраторы",
                                 "name": "Администратор",
                                 "role": "Администратор"}

    ut = UsersTab(browser)

    ut.open_add_user_window()
    ut.add_new_user(user_data)

test_add_and_delete_user(browser, cleanup_users)

Проверяет добавление и удаление пользователя.

Parameters:

Name Type Description Default
browser Page

Экземпляр страницы Playwright.

required
cleanup_users None

Фикстура для автоматического удаления пользователя после теста.

required
Source code in tests\e2e\test_users_tab.py
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
def test_add_and_delete_user(self, browser: Page, cleanup_users: None) -> None:
    """Проверяет добавление и удаление пользователя.

    Args:
        browser: Экземпляр страницы Playwright.
        cleanup_users: Фикстура для автоматического удаления пользователя после теста.
    """

    user_data: Dict[str, str] = {"name": "TestUser", "role": "Администратор", "password": "987654"}

    mp = MainPage(browser)
    ut = UsersTab(browser)

    # Проверяем, есть ли такой пользователь
    user_exists = ut.find_user_in_table(user_data["name"], user_data["role"]) != -1

    if not user_exists:
        # Создаем пользователя впервые
        ut.open_add_user_window()
        success = ut.add_new_user(user_data)

        if success:
            # Ждем обновления таблицы с использованием ожиданий Playwright
            browser.wait_for_timeout(2000)

            # Проверяем наличие пользователя в таблице
            user_found = ut.find_user_in_table(user_data["name"], user_data["role"]) != -1
            if not user_found:
                # Если пользователь не найден, обновляем страницу
                browser.reload()
                browser.wait_for_timeout(2000)
        else:
            ut.close_add_user_window()

    # Пытаемся создать такого же пользователя снова
    ut.open_add_user_window()
    success_second = ut.add_new_user(user_data)

    # Должно вернуться False при попытке создания существующего пользователя
    assert not success_second, "Ожидалась ошибка при создании существующего пользователя"

    ut.open_edit_user_page_by_user(user_data["name"], user_data["role"])
    ut.delete_user(user_data["name"])
    mp.click_subpanel_item("Пользователи")
    mp.click_subpanel_item("Пользователи")
    ut.should_not_be_user_in_table(user_data["name"], user_data["role"])

test_add_user_window_close_buttons(browser)

Проверяет кнопки закрытия окна добавления.

Parameters:

Name Type Description Default
browser Page

Экземпляр страницы Playwright.

required
Source code in tests\e2e\test_users_tab.py
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
def test_add_user_window_close_buttons(self, browser: Page) -> None:
    """Проверяет кнопки закрытия окна добавления.

    Args:
        browser: Экземпляр страницы Playwright.
    """

    ut = UsersTab(browser)
    ut.open_add_user_window()
    ut.close_add_user_window_by_toolbar_button()

    ut.open_add_user_window()
    ut.close_add_user_window()

    ut.open_add_user_window()
    ut.transform_to_add_AD_user_window()
    ut.close_add_AD_user_window_by_toolbar_button()

    ut.open_add_user_window()
    ut.transform_to_add_AD_user_window()
    ut.close_add_AD_user_window()

test_add_user_window_content(browser)

Проверяет содержимое окна добавления пользователя.

Parameters:

Name Type Description Default
browser Page

Экземпляр страницы Playwright.

required
Source code in tests\e2e\test_users_tab.py
103
104
105
106
107
108
109
110
111
112
113
114
def test_add_user_window_content(self, browser: Page) -> None:
    """Проверяет содержимое окна добавления пользователя.

    Args:
        browser: Экземпляр страницы Playwright.
    """

    ut = UsersTab(browser)
    ut.open_add_user_window()
    ut.check_add_user_window_content()
    ut.transform_to_add_AD_user_window()
    ut.check_add_AD_user_window_content()

test_edit_user_role(browser, cleanup_users)

Проверяет изменение роли пользователя.

Parameters:

Name Type Description Default
browser Page

Экземпляр страницы Playwright.

required
cleanup_users None

Фикстура для автоматического удаления пользователя после теста.

required
Source code in tests\e2e\test_users_tab.py
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
def test_edit_user_role(self, browser: Page, cleanup_users: None) -> None:
    """Проверяет изменение роли пользователя.

    Args:
        browser: Экземпляр страницы Playwright.
        cleanup_users: Фикстура для автоматического удаления пользователя после теста.
    """

    user_data: Dict[str, str] = {"name": "TestUserAutoOperator", "role": "Оператор", "password": "123245"}

    mp = MainPage(browser)
    ut = UsersTab(browser)

    ut.open_add_user_window()
    ut.add_new_user(user_data)
    mp.click_subpanel_item("Пользователи")
    mp.click_subpanel_item("Пользователи")
    ut.open_edit_user_page_by_user(user_data["name"], user_data["role"])
    new_user_data = {"role": "Контактное лицо"}
    ut.edit_user(user_data["name"], new_user_data)
    mp.click_subpanel_item("Пользователи")
    mp.click_subpanel_item("Пользователи")
    ut.should_be_user_in_table(user_data["name"], new_user_data["role"])
    ut.open_edit_user_page_by_user(user_data["name"], new_user_data["role"])
    ut.delete_user(user_data["name"])
    mp.click_subpanel_item("Пользователи")
    mp.click_subpanel_item("Пользователи")
    ut.should_not_be_user_in_table(user_data["name"], new_user_data["role"])

test_edit_user_window_close_buttons(browser)

Проверяет кнопки закрытия окна редактирования.

Parameters:

Name Type Description Default
browser Page

Экземпляр страницы Playwright.

required
Source code in tests\e2e\test_users_tab.py
149
150
151
152
153
154
155
156
157
158
159
160
def test_edit_user_window_close_buttons(self, browser: Page) -> None:
    """Проверяет кнопки закрытия окна редактирования.

    Args:
        browser: Экземпляр страницы Playwright.
    """

    ut = UsersTab(browser)
    user_name, _ = ut.open_edit_user_page_by_index(0)
    ut.close_edit_user_window_by_toolbar_button(user_name)
    user_name, _ = ut.open_edit_user_page_by_index(0)
    ut.close_edit_user_window(user_name)

test_edit_user_window_content(browser)

Проверяет содержимое окна редактирования.

Parameters:

Name Type Description Default
browser Page

Экземпляр страницы Playwright.

required
Source code in tests\e2e\test_users_tab.py
138
139
140
141
142
143
144
145
146
147
def test_edit_user_window_content(self, browser: Page) -> None:
    """Проверяет содержимое окна редактирования.

    Args:
        browser: Экземпляр страницы Playwright.
    """

    ut = UsersTab(browser)
    user_name, role = ut.open_edit_user_page_by_index(0)
    ut.check_edit_user_window_content(user_name, role)

test_reset_password(browser, cleanup_users)

Проверяет сброс пароля пользователя.

Parameters:

Name Type Description Default
browser Page

Экземпляр страницы Playwright.

required
cleanup_users None

Фикстура для автоматического удаления пользователя после теста.

required
Source code in tests\e2e\test_users_tab.py
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
def test_reset_password(self, browser: Page, cleanup_users: None) -> None:
    """Проверяет сброс пароля пользователя.

    Args:
        browser: Экземпляр страницы Playwright.
        cleanup_users: Фикстура для автоматического удаления пользователя после теста.
    """

    user_data: Dict[str, str] = {"name": "TestUserAutoAdmin", "role": "Администратор", "password": "123456"}

    mp = MainPage(browser)
    ut = UsersTab(browser)

    ut.open_add_user_window()
    ut.add_new_user(user_data)
    mp.click_subpanel_item("Пользователи")
    mp.click_subpanel_item("Пользователи")
    ut.open_edit_user_page_by_user(user_data["name"], user_data["role"])
    new_password = ut.reset_password(user_data["name"])

    if len(new_password) == 0:
        assert False, "Unsuccessful password reset"

    new_lp = LoginPage(browser)
    new_lp.do_login(username=user_data["name"], password=new_password)
    new_mp = MainPage(browser)
    new_mp.do_logout()
    lp_1 = LoginPage(browser)
    lp_1.do_login()
    mp_1 = MainPage(browser)
    mp_1.should_be_navigation_panel()
    mp_1.click_main_navigation_panel_item("Настройки")
    mp_1.click_subpanel_item("Пользователи")
    ut_1 = UsersTab(browser)
    ut_1.open_edit_user_page_by_user(user_data["name"], user_data["role"])
    ut_1.delete_user(user_data["name"])
    mp_1.click_subpanel_item("Пользователи")
    mp_1.click_subpanel_item("Пользователи")
    ut_1.should_not_be_user_in_table(user_data["name"], user_data["role"])

test_users_tab_content(browser)

Проверяет содержимое вкладки 'Пользователи'.

Parameters:

Name Type Description Default
browser Page

Экземпляр страницы Playwright.

required
Source code in tests\e2e\test_users_tab.py
80
81
82
83
84
85
86
87
88
89
90
def test_users_tab_content(self, browser: Page) -> None:
    """Проверяет содержимое вкладки 'Пользователи'.

    Args:
        browser: Экземпляр страницы Playwright.
    """

    ut = UsersTab(browser)
    ut.should_be_toolbar()
    ut.should_be_users_table()
    ut.check_users_table_content(True)

test_users_tab_toolbar_buttons(browser)

Проверяет кнопки на панели инструментов.

Parameters:

Name Type Description Default
browser Page

Экземпляр страницы Playwright.

required
Source code in tests\e2e\test_users_tab.py
 92
 93
 94
 95
 96
 97
 98
 99
100
def test_users_tab_toolbar_buttons(self, browser: Page) -> None:
    """Проверяет кнопки на панели инструментов.

    Args:
        browser: Экземпляр страницы Playwright.
    """

    ut = UsersTab(browser)
    ut.should_be_toolbar_buttons()