⏱️ Duration: 35.34s
❌ Error:
self = <test_publisher.TestPublisherFacebook object at 0x7f3e0f9cdea0>
login_page = <pages.login_page.LoginPage object at 0x7f3e0e5c8a60>
dashboard_page = <pages.dashboard_page.DashboardPage object at 0x7f3e0e5c8580>
publish_page = <pages.publish_page.PublishPage object at 0x7f3e0e5c87c0>
publisher_page = <pages.publisher_page.PublisherPage object at 0x7f3e0e5c8c70>
planner_page = <pages.planner_page.PlannerPage object at 0x7f3e0e5c9c00>
base_url = 'https://promo.com'
@pytest.mark.skip_smoke
@pytest.mark.skip_sanity
def test_pu04_publish_empty_post_shows_error(
self, login_page, dashboard_page, publish_page, publisher_page, planner_page, base_url
):
login_page.login_directly(base_url, general_mail(), get_password())
planner_page.go_to_my_calendar(base_url)
planner_page.verify_on_planner()
planner_page.clean_scheduled_posts_precondition()
dashboard_page.go_to_published(base_url)
dashboard_page.delete_first_vertical_project()
dashboard_page.republish_first_video()
publish_page.wait_for_render_and_verify()
publish_page.click_schedule_to_social()
publisher_page.verify_redirected_to_publisher()
publisher_page.select_facebook_page()
publisher_page.click_publish_header()
> publisher_page.attempt_publish_without_video()
tests/publisher_facebook/test_publisher.py:177:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <pages.publisher_page.PublisherPage object at 0x7f3e0e5c8c70>
def attempt_publish_without_video(self):
"""Removes the attached video (if present) and tries to publish; verifies the error state."""
remove_btn = self.page.locator(self.REMOVE_VIDEO_BTN)
if remove_btn.is_visible(timeout=self.T_PROBE):
remove_btn.click()
self.page.locator(self.ADD_VIDEO_BTN).wait_for(state="visible", timeout=self.T_ACTION)
self.click_publi
📸 Failure Screenshot:
⏱️ Duration: 28.88s
❌ Error:
self = <test_publisher.TestPublisherFacebook object at 0x7f3e0f9cf1f0>
login_page = <pages.login_page.LoginPage object at 0x7f3dff6a75b0>
planner_page = <pages.planner_page.PlannerPage object at 0x7f3dff6a6650>
publisher_page = <pages.publisher_page.PublisherPage object at 0x7f3dff6a73d0>
base_url = 'https://promo.com'
@pytest.mark.skip_smoke
@pytest.mark.skip_sanity
def test_pu09_create_another_post_from_summary(
self, login_page, planner_page, publisher_page, base_url
):
login_page.login_directly(base_url, general_mail(), get_password())
planner_page.go_to_my_calendar(base_url)
planner_page.verify_on_planner()
> planner_page.add_new_post_today()
tests/publisher_facebook/test_publisher.py:424:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
pages/planner_page.py:227: in add_new_post_today
self.page.locator(self.PLUS_BUTTON).first.hover()
/usr/local/lib/python3.10/dist-packages/playwright/sync_api/_generated.py:19385: in hover
self._sync(
/usr/local/lib/python3.10/dist-packages/playwright/_impl/_locator.py:482: in hover
return await self._frame.hover(
/usr/local/lib/python3.10/dist-packages/playwright/_impl/_frame.py:773: in hover
await self._channel.send("hover", self._timeout, locals_to_params(locals()))
/usr/local/lib/python3.10/dist-packages/playwright/_impl/_connection.py:76: in send
return await self._connection.wrap_api_call(
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
self = <playwright._impl._connection.Connection object at 0x7f3e0f9cd1b0>
cb = <function Channel.send.<locals>.<lambda> at 0x7f3dff5f7250>
is_internal = False, title = None
async def wrap_api_call(
self, cb: Callable[[], Any], is_internal: bool = False, title: str = None
) -> Any:
if self._api_zone.get():
return await cb()
task = asyncio.current_task(self._loop)
parsed_st = _attach_api_c
📸 Failure Screenshot: