Commit 3eeea1c8 by linguangwei

修改为pytest框架

parent ddf2e2f9
......@@ -5,6 +5,7 @@
<option name="ignoredErrors">
<list>
<option value="N806" />
<option value="N802" />
</list>
</option>
</inspection_tool>
......
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$/.." vcs="Git" />
<mapping directory="$PROJECT_DIR$" vcs="Git" />
</component>
</project>
\ No newline at end of file
import unittest
import pytest
from src.framework.HTMLTestRunner import HTMLTestRunner
from src.framework import common
from src.testcase.testLoginPage import TestLoginPage as TLP
# from src.testcase.testMainPage import TestMainPage as TMP
if __name__ == '__main__':
testunit = unittest.TestSuite()
testunit.addTest(TLP('testLogin'))
# testunit.addTests([TMP('test_1_UnStartLive'), TMP('test_2_StartLive'), TMP('test_3_ReviewLive')])
# testunit.addTests([TMP('test_1_UnStartLive')])
# 定义报告输出路径
htmlPath = "./report/AI-XM_Report{}.html".format(common.year_to_minute())
with(open(htmlPath, 'wb')) as fp:
runner = HTMLTestRunner(
stream=fp,
title='企培客户端UI自动化测试报告',
description='描述'
)
runner.run(testunit)
pytest.main(["-v", '--html={}'.format(htmlPath), './src/testcase/test_MainPage.py'])
......@@ -80,6 +80,6 @@ class MainPage(LoginPage):
def page_down(self, coursename):
while True:
self.keys_down()
ele = EC.presence_of_element_located((By.XPATH, """//div[text()={}]/..//button[@class="ant-btn ant-btn-primary"]""".format(coursename)))
ele = EC.presence_of_element_located((By.XPATH, """//div[text()={}]/..//button[@class="ant-btn"]""".format(coursename)))
if ele:
break
import time
import pytest
from src.framework.logger import Logger
from src.pageobject.livepage import LivePage
from src.framework.common import create_a_live
......@@ -6,14 +10,15 @@ from src.framework.common import screenshot_path, compare_pictures, year_to_minu
from config import readConfig
import unittest
import sys
class TestLivePage(unittest.TestCase):
class TestLivePage(object):
logger = Logger('live page').getlog()
cloud_class_location = readConfig.test_location()
time.sleep(15)
live_course_name = create_a_live(start_time=25, start_time2=1)
# 指定客户端的本地路径,在/config/config.ini配置
driver = get_app_driver(cloud_class_location)
live_page = LivePage(driver=driver)
# 这里停15s是因为setUP里创建直播间获取token登录了一次,限制两次登录需间隔15s
......@@ -25,15 +30,13 @@ class TestLivePage(unittest.TestCase):
live_page.change_window(live_page.camera_btn)
live_page.sleep(5)
def setUp(self) -> None:
# 指定客户端的本地路径,在/config/config.ini配置
def setup_class(self):
pass
@classmethod
def tearDownClass(cls) -> None:
cls.driver.quit()
def teardown_class(self):
self.driver.quit()
# 测试直播间摄像头 测试的时候有个问题,如果摄像头黑屏,检查一下是否开了两个客户端,造成了摄像头抢占
# 测试直播间摄像头 测试的时候如果摄像头黑屏,检查一下是否开了两个客户端,造成了摄像头抢占
def testLiveCamera(self):
before_savescreen = screenshot_path(sys._getframe().f_code.co_name) + "/" + year_to_minute() + '.png'
self.live_page.save_screenshot(before_savescreen)
......@@ -42,7 +45,7 @@ class TestLivePage(unittest.TestCase):
after_savescreen = screenshot_path(sys._getframe().f_code.co_name) + "/" + year_to_minute() + '.png'
self.live_page.save_screenshot(after_savescreen)
result = compare_pictures(before_savescreen, after_savescreen)
self.assertLessEqual(10, result)
assert 10 < result
self.live_page.sleep(3)
# 测试添加白板并打开
......@@ -59,8 +62,8 @@ class TestLivePage(unittest.TestCase):
after_whiteboard_savescreen = screenshot_path(sys._getframe().f_code.co_name) + "/" + year_to_minute() + '.png'
self.live_page.save_screenshot(after_whiteboard_savescreen)
whiteboard_result = compare_pictures(before_whiteboard_savescreen, after_whiteboard_savescreen)
self.assertLessEqual(10, whiteboard_result)
assert 10 < whiteboard_result
if __name__ == '__main__':
unittest.main(verbosity=1)
pytest.main(["-v"])
import pytest
from src.pageobject.loginpage import LoginPage
from src.framework.logger import Logger
from src.framework.appDriver import get_app_driver
from config import readConfig
import unittest
class TestLoginPage(unittest.TestCase):
class TestLoginPage(object):
logger = Logger('login page').getlog()
account = readConfig.test_account()
password = readConfig.test_password()
cloud_class_location = readConfig.test_location()
def setUp(self) -> None:
print(11111)
def setup_class(self):
# 指定客户端的本地路径,在/config/config.ini配置
self.driver = get_app_driver(self.cloud_class_location)
def tearDown(self) -> None:
def teardown_class(self):
self.driver.quit()
# 测试登录
......@@ -31,8 +30,8 @@ class TestLoginPage(unittest.TestCase):
login_page.click_login()
login_page.sleep(1)
# 校验是否存在店铺名称的元素
self.assertTrue(login_page.ifElementExist(login_page.store_name))
assert login_page.ifElementExist(login_page.store_name)
if __name__ == '__main__':
unittest.main(verbosity=1)
pytest.main(["-v"])
import time
import pytest
from src.framework.logger import Logger
from src.pageobject.mainpage import MainPage
from src.framework.common import create_a_live
......@@ -5,19 +9,18 @@ from src.framework.appDriver import get_app_driver
from config import readConfig
import unittest
class TestMainPage(unittest.TestCase):
class TestMainPage(object):
logger = Logger('main page').getlog()
cloud_class_location = readConfig.test_location()
time.sleep(15)
live_course_name = create_a_live(start_time=25, start_time2=1)
def setUp(self) -> None:
def setup_method(self):
# 指定客户端的本地路径,在/config/config.ini配置
self.driver = get_app_driver(self.cloud_class_location)
def tearDown(self) -> None:
def teardown_method(self):
self.driver.quit()
# 测试主页-进入未开启直播
......@@ -34,7 +37,7 @@ class TestMainPage(unittest.TestCase):
main_page.sleep(5)
main_page.change_window(main_page.camera_btn)
main_page.sleep(2)
self.assertTrue(main_page.ifElementExist(main_page.camera_btn))
assert main_page.ifElementExist(main_page.camera_btn)
main_page.sleep(3)
# 测试主页-进入已开启直播
......@@ -63,7 +66,7 @@ class TestMainPage(unittest.TestCase):
main_page.stop_live()
main_page.sleep(3)
main_page.change_window(main_page.live_list)
self.assertEqual("查看回放", main_page.get_btn_text(self.live_course_name[1]))
assert "查看回放" == main_page.get_btn_text(self.live_course_name[1])
main_page.sleep(3)
# 测试回放
......@@ -82,4 +85,4 @@ class TestMainPage(unittest.TestCase):
if __name__ == '__main__':
unittest.main(verbosity=1)
pytest.main(["-v"])
import time
import pytest
from src.framework.logger import Logger
from src.pageobject.whiteboardpage import WhiteBoardPage
from src.framework.common import create_a_live
......@@ -6,13 +10,13 @@ from src.framework.common import screenshot_path, compare_pictures, year_to_minu
from config import readConfig
import unittest
import sys
class TestLivePage(unittest.TestCase):
class TestLivePage(object):
logger = Logger('live page').getlog()
cloud_class_location = readConfig.test_location()
time.sleep(15)
live_course_name = create_a_live(start_time=25, start_time2=1)
driver = get_app_driver(cloud_class_location)
live_page = WhiteBoardPage(driver=driver)
......@@ -25,13 +29,12 @@ class TestLivePage(unittest.TestCase):
live_page.change_window(live_page.camera_btn)
live_page.sleep(5)
def setUp(self) -> None:
def setup_class(self):
# 指定客户端的本地路径,在/config/config.ini配置
pass
@classmethod
def tearDownClass(cls) -> None:
cls.driver.quit()
def teardown_class(self):
self.driver.quit()
# 测试白板功能-文本输入
def testWhiteBoard(self):
......@@ -59,8 +62,8 @@ class TestLivePage(unittest.TestCase):
self.live_page.save_screenshot(after_send_wenben)
wenben_result = compare_pictures(before_send_wenben, after_send_wenben)
print(wenben_result)
self.assertLessEqual(10, wenben_result)
assert 10 < wenben_result
if __name__ == '__main__':
unittest.main(verbosity=1)
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