Commit 897d5b0f by linguangwei

添加摄像头的四个功能

parent 6aebc3c1
......@@ -4,11 +4,10 @@
<option name="autoReloadType" value="SELECTIVE" />
</component>
<component name="ChangeListManager">
<list default="true" id="00f4febb-36b6-426d-bfe6-b023876a617e" name="Default Changelist" comment="review">
<list default="true" id="00f4febb-36b6-426d-bfe6-b023876a617e" name="Default Changelist" comment="添加删除白板功能">
<change afterPath="$PROJECT_DIR$/src/pageobject/livecamerapage.py" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/testcase/test_LiveCameraPage.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/pageobject/basepage.py" beforeDir="false" afterPath="$PROJECT_DIR$/src/pageobject/basepage.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/pageobject/whiteboardpage.py" beforeDir="false" afterPath="$PROJECT_DIR$/src/pageobject/whiteboardpage.py" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/testcase/test_WhiteBoardPage.py" beforeDir="false" afterPath="$PROJECT_DIR$/src/testcase/test_WhiteBoardPage.py" afterDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
......@@ -175,24 +174,29 @@
<recent name="C:\Users\Administrator\PycharmProjects\xm-uitest-live" />
</key>
</component>
<component name="RunManager" selected="Python tests.pytest for test_WhiteBoardPage.TestLivePage.testDeleteWhiteBoardr">
<configuration name="pytest for test_MainBarPage.TestMainPage.test_SelectLastMonth" type="tests" factoryName="py.test" temporary="true" nameIsGenerated="true">
<component name="RunManager" selected="Python tests.pytest for test_LiveCameraPage.TestLivePage">
<configuration name="demo" type="PythonConfigurationType" factoryName="Python" temporary="true" nameIsGenerated="true">
<module name="xm-uitest-live" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
<envs>
<env name="PYTHONUNBUFFERED" value="1" />
</envs>
<option name="SDK_HOME" value="" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$/src/testcase" />
<option name="WORKING_DIRECTORY" value="$PROJECT_DIR$" />
<option name="IS_MODULE_SDK" value="true" />
<option name="ADD_CONTENT_ROOTS" value="true" />
<option name="ADD_SOURCE_ROOTS" value="true" />
<option name="_new_keywords" value="&quot;&quot;" />
<option name="_new_parameters" value="&quot;&quot;" />
<option name="_new_additionalArguments" value="&quot;&quot;" />
<option name="_new_target" value="&quot;test_MainBarPage.TestMainPage.test_SelectLastMonth&quot;" />
<option name="_new_targetType" value="&quot;PYTHON&quot;" />
<option name="SCRIPT_NAME" value="$PROJECT_DIR$/demo.py" />
<option name="PARAMETERS" value="" />
<option name="SHOW_COMMAND_LINE" value="false" />
<option name="EMULATE_TERMINAL" value="false" />
<option name="MODULE_MODE" value="false" />
<option name="REDIRECT_INPUT" value="false" />
<option name="INPUT_FILE" value="" />
<method v="2" />
</configuration>
<configuration name="pytest for test_MainBarPage.TestMainPage.test_SelectOtherDay" type="tests" factoryName="py.test" temporary="true" nameIsGenerated="true">
<configuration name="pytest for test_LiveCameraPage.TestLivePage" type="tests" factoryName="py.test" temporary="true" nameIsGenerated="true">
<module name="xm-uitest-live" />
<option name="INTERPRETER_OPTIONS" value="" />
<option name="PARENT_ENVS" value="true" />
......@@ -204,7 +208,7 @@
<option name="_new_keywords" value="&quot;&quot;" />
<option name="_new_parameters" value="&quot;&quot;" />
<option name="_new_additionalArguments" value="&quot;&quot;" />
<option name="_new_target" value="&quot;test_MainBarPage.TestMainPage.test_SelectOtherDay&quot;" />
<option name="_new_target" value="&quot;test_LiveCameraPage.TestLivePage&quot;" />
<option name="_new_targetType" value="&quot;PYTHON&quot;" />
<method v="2" />
</configuration>
......@@ -258,11 +262,11 @@
</configuration>
<recent_temporary>
<list>
<item itemvalue="Python tests.pytest for test_LiveCameraPage.TestLivePage" />
<item itemvalue="Python.demo" />
<item itemvalue="Python tests.pytest for test_WhiteBoardPage.TestLivePage.testDeleteWhiteBoardr" />
<item itemvalue="Python tests.pytest for test_WhiteBoardPage.TestLivePage" />
<item itemvalue="Python tests.pytest for test_MainBarPage.TestMainPage.test_SelectToday" />
<item itemvalue="Python tests.pytest for test_MainBarPage.TestMainPage.test_SelectOtherDay" />
<item itemvalue="Python tests.pytest for test_MainBarPage.TestMainPage.test_SelectLastMonth" />
</list>
</recent_temporary>
</component>
......@@ -537,7 +541,14 @@
<option name="project" value="LOCAL" />
<updated>1626685366746</updated>
</task>
<option name="localTasksCounter" value="37" />
<task id="LOCAL-00037" summary="添加删除白板功能">
<created>1626687629349</created>
<option name="number" value="00037" />
<option name="presentableId" value="LOCAL-00037" />
<option name="project" value="LOCAL" />
<updated>1626687629349</updated>
</task>
<option name="localTasksCounter" value="38" />
<servers />
</component>
<component name="TestHistory">
......@@ -657,7 +668,8 @@
<MESSAGE value="发送钉钉测试报告,本机作为服务器" />
<MESSAGE value="添加时间轴case" />
<MESSAGE value="review" />
<option name="LAST_COMMIT_MESSAGE" value="review" />
<MESSAGE value="添加删除白板功能" />
<option name="LAST_COMMIT_MESSAGE" value="添加删除白板功能" />
</component>
<component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/server.log" />
......
from src.pageobject.mainpage import MainPage
from selenium.webdriver.common.by import By
# 直播页面-摄像头操作
class LiveCameraPage(MainPage):
# 元素集
# 开启/关闭摄像头按钮
camera_btn = (By.XPATH, "//div[@class='camera']/span")
# 摄像头ele
camera_ele = (By.XPATH, "//[@id='localVideo']")
# 画面内的摄像头关闭按钮
close_camera_btn = (By.XPATH, "//span[@class='iconBox trans']/span")
# 画面内的摄像头镜像按钮
camera_image = (By.XPATH, "//span[@class='iconBox']/span")
def __init__(self, driver):
MainPage.__init__(self, driver)
# 点击摄像头
def click_camera_btn(self):
self.click(self.camera_btn)
# 鼠标选择在摄像头画面
def mouse_on_camera(self):
self.mouse_stop_until_ele_show(self.camera_ele)
# 点击关闭摄像头
def click_close_camera_btn(self):
self.click(self.close_camera_btn)
# 点击开启摄像头镜像
def click_camera_image(self):
self.click(self.camera_image)
import time
import allure
import pytest
from src.pageobject.livecamerapage import LiveCameraPage
from src.framework.appDriver import get_app_driver
from src.framework.logger import Logger
from src.framework.common import create_a_live
from src.framework.common import screenshot_path, compare_pictures, year_to_minute
from src.framework.common import get_allure_screenshots
from config import readConfig
import sys
class TestLivePage(object):
cloud_class_location = readConfig.test_location()
driver = get_app_driver(cloud_class_location)
Live_Camera_Page = LiveCameraPage(driver=driver)
@pytest.fixture(scope="module", autouse=True)
def before_test(self):
self.logger = Logger('live page').getlog()
time.sleep(15)
live_course_name = create_a_live(start_time=25, start_time2=1)
# 这里停15s是因为setUP里创建直播间获取token登录了一次,限制两次登录需间隔15s
self.Live_Camera_Page.sleep(15)
self.Live_Camera_Page.login()
self.Live_Camera_Page.sleep(2)
print(live_course_name[0])
self.Live_Camera_Page.click_in_live_btn(live_course_name[0])
self.Live_Camera_Page.sleep(5)
self.Live_Camera_Page.change_window(self.Live_Camera_Page.camera_btn)
self.Live_Camera_Page.sleep(5)
yield self.driver
self.driver.quit()
@pytest.mark.run(order=1)
@allure.title("测试摄像头功能-关闭摄像头-方法1")
def testCloseCameraByFunction1(self):
before_close_camera = screenshot_path(sys._getframe().f_code.co_name) + "/" + year_to_minute() + '.png'
self.Live_Camera_Page.save_screenshot(before_close_camera)
get_allure_screenshots(before_close_camera, "关闭摄像头前截图")
self.Live_Camera_Page.click_camera_btn()
self.Live_Camera_Page.sleep(1)
after_close_camera = screenshot_path(sys._getframe().f_code.co_name) + "/" + year_to_minute() + '.png'
self.Live_Camera_Page.save_screenshot(after_close_camera)
get_allure_screenshots(after_close_camera, "关闭摄像头后截图")
result = compare_pictures(before_close_camera, after_close_camera)
print(result)
assert 10 < result
@pytest.mark.run(order=2)
@allure.title("测试摄像头功能-开启摄像头")
def testOpenCamera(self):
before_open_camera = screenshot_path(sys._getframe().f_code.co_name) + "/" + year_to_minute() + '.png'
self.Live_Camera_Page.save_screenshot(before_open_camera)
get_allure_screenshots(before_open_camera, "开启摄像头前截图")
self.Live_Camera_Page.click_camera_btn()
self.Live_Camera_Page.sleep(1)
after_open_camera = screenshot_path(sys._getframe().f_code.co_name) + "/" + year_to_minute() + '.png'
self.Live_Camera_Page.save_screenshot(after_open_camera)
get_allure_screenshots(after_open_camera, "开启摄像头后截图")
result = compare_pictures(before_open_camera, after_open_camera)
print(result)
assert 10 < result
@pytest.mark.run(order=3)
@allure.title("测试摄像头功能-摄像头镜像")
def testOpenCameraImage(self):
before_open_camera_image = screenshot_path(sys._getframe().f_code.co_name) + "/" + year_to_minute() + '.png'
self.Live_Camera_Page.save_screenshot(before_open_camera_image)
get_allure_screenshots(before_open_camera_image, "开启摄像头镜像前截图")
self.Live_Camera_Page.mouse_on_camera()
self.Live_Camera_Page.sleep(1)
self.Live_Camera_Page.click_camera_image()
after_open_camera_image = screenshot_path(sys._getframe().f_code.co_name) + "/" + year_to_minute() + '.png'
self.Live_Camera_Page.save_screenshot(after_open_camera_image)
get_allure_screenshots(after_open_camera_image, "开启摄像头镜像后截图")
result = compare_pictures(before_open_camera_image, after_open_camera_image)
print(result)
assert 10 < result
@pytest.mark.run(order=4)
@allure.title("测试摄像头功能-关闭摄像头-方法2")
def testCloseCameraByFunction2(self):
before_open_camera_image = screenshot_path(sys._getframe().f_code.co_name) + "/" + year_to_minute() + '.png'
self.Live_Camera_Page.save_screenshot(before_open_camera_image)
get_allure_screenshots(before_open_camera_image, "关闭摄像头前截图")
self.Live_Camera_Page.mouse_on_camera()
self.Live_Camera_Page.sleep(1)
self.Live_Camera_Page.click_close_camera_btn()
after_open_camera_image = screenshot_path(sys._getframe().f_code.co_name) + "/" + year_to_minute() + '.png'
self.Live_Camera_Page.save_screenshot(after_open_camera_image)
get_allure_screenshots(after_open_camera_image, "关闭摄像头后截图")
result = compare_pictures(before_open_camera_image, after_open_camera_image)
print(result)
assert 10 < result
if __name__ == '__main__':
pytest.main(["-v"])
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment