コード例 #1
0
class TestHomePage():

    @pytest.fixture(scope="function")
    def home_init(self):
        self.base = Base(self.driver)
        self.home = HomePage(self.driver)
        self.pubmethod = PubMethod(self.driver)
        self.share = SharePage(self.driver)
        self.more = MorePage(self.driver)
        logging.info("")
        logging.info("****开始执行用例****")
        self.pubmethod.stopApp(BROWSER_PACKAGE_NAME)
        self.pubmethod.startApp(BROWSER_PACKAGE_NAME)
        self.home.clickHome()
        self.home.clickHomeOnPage(HOME_PAGE)
        yield
        logging.info("****用例执行结束****")
        logging.info("")


    @allure.story('测试资讯流页面存在相应text')
    def test001HomePage(self, home_init):
        '''
        1、点击地址栏more按钮
        2、点击back
        3、向下滑动页面进入到资讯流列表页
        4、向下滑动查找text
        '''
        self.home.clickMore()
        # sleep(2)
        self.pubmethod.clickBack()
        self.pubmethod.scrollPage(2)
        # self.pubmethod.clickHome()
        # self.pubmethod.scrollPageToElement('火爆动作片,话没说几句就开打,下手凶狠,血战到底')
        self.base.assertTrue('火爆动作片,话没说几句就开打,下手凶狠,血战到底', timeout = 5)


    # @allure.story('测试正常进入到我的收藏页面')
    # def test002MyCollection(self, home_init):
    #     self.home.clickMore()
    #     self.base.assertTrue("dkjkdsjfksdkfslkfsfs")


    @allure.story('测试资讯流广告')
    def test002HomePage(self, home_init):

        #点击资讯
        self.home.clickInformation()

        self.home.clickInformation()
        sleep(5)
        self.base.scrollToElement('广告')
        #self.base.clickByElement('广告')
        self.home.clickAdvertisement()

    @allure.story('测试前进后退')
    def test003HomePage(self, home_init):
        '''
        1、打开首页导航栏的安居客网址
        2、点击安居客首页的“新房”
        3、手势后退至安居客首页,再手势前进至“新房”页面
        '''
        self.share.clickAnjuke()
        self.home.clickNewHouse()
        self.home.right_swipe()
        self.base.assertTrue(ANJUKE_SEARCH)
        self.home.left_swipe()
        self.base.assertTrue(NEWHOUSE_SEARCH)


    @allure.story('测试爱淘宝能否正常打开')
    def test004HomePage(self, home_init):
        '''
        1、点击"爱淘宝"
        2、断言是否跳转到"爱淘宝"页面
        '''
        # 点击网址导航-》爱淘宝
        self.more.clickDaoHang(AITAOBAO)
        self.base.assertTrue(AITAOBAO_PAGE)

    @allure.story('测试搜索能否正常打开')
    def test005HomePage(self, home_init):
        '''
        1、点击"搜索"
        2、断言是否跳转到"搜索"页面
        '''
        # 点击网址导航-》搜索
        self.more.clickDaoHang(WEB_SEARCH)
        self.base.browserWatcher()
        self.base.assertTrue(WEB_SEARCH_PAGE)

    @allure.story('测试聚划算能否正常打开')
    def test006HomePage(self, home_init):
        '''
        1、点击"聚划算"
        2、断言是否跳转到"聚划算"页面
        '''
        # 点击网址导航-》聚划算
        self.more.clickDaoHang(JHS)
        self.base.assertTrue(JHS_PAGE)

    @allure.story('测试天猫能否正常打开')
    def test007HomePage(self, home_init):
        '''
        1、点击"天猫"
        2、断言是否跳转到"天猫"页面
        '''
        # 点击网址导航-》天猫
        self.more.clickDaoHang(TIANMAO)
        self.base.assertTrue(TIANMAO_PAGE)

    @allure.story('测试同城能否正常打开')
    def test008HomePage(self, home_init):
        '''
        1、点击"同城"
        2、断言是否跳转到"同城"页面
        '''
        # 点击网址导航-》同城
        self.more.clickDaoHang(TONGCHEN)
        self.base.assertTrue(TONGCHEN_PAGE)

    @allure.story('测试京东能否正常打开')
    def test009HomePage(self, home_init):
        '''
        1、点击"京东"
        2、断言是否跳转到"京东"页面
        '''
        # 点击网址导航-》京东
        self.more.clickDaoHang(JD)
        self.base.assertTrue(JD_PAGE)

    @allure.story('测试招聘能否正常打开')
    def test010HomePage(self, home_init):
        '''
        1、点击"招聘"
        2、断言是否跳转到"招聘"页面
        '''
        # 点击网址导航-》招聘
        self.more.clickDaoHang(ZHAOPIN)
        self.base.assertTrue(ZHAOPIN_PAGE)

    @allure.story('测试拼多多能否正常打开')
    def test011HomePage(self, home_init):
        '''
        1、点击"拼多多"
        2、断言是否跳转到"拼多多"页面
        '''
        # 点击网址导航-》拼多多
        self.more.clickDaoHang(PINDUODUO)
        self.base.assertTrue(PINDUODUO_PAGE)

    @allure.story('测试安居客能否正常打开')
    def test012HomePage(self, home_init):
        '''
        1、点击"安居客"
        2、断言是否跳转到"安居客"页面
        '''
        # 点击网址导航-》安居客
        self.more.clickDaoHang(ANJUKE)
        self.base.assertTrue(ANJUKE_PAGE)

    @allure.story('测试今日头条能否正常打开')
    def test013HomePage(self, home_init):
        '''
        1、点击"今日头条"
        2、断言是否跳转到"今日头条"页面
        '''
        # 点击网址导航-》今日头条
        self.more.clickDaoHang(TOUTIAO)
        self.base.assertTrue(TOUTIAO_PAGE)

    @allure.story('测试小说能否正常打开')
    def test014HomePage(self, home_init):
        '''
        1、点击"热门小说"
        2、断言是否跳转到"小说"页面
        '''
        # 点击导航栏-》更多
        self.more.clickDaoHang(HOT_NOVEL)
        self.base.browserWatcher()
        self.base.assertTrue(NOVEL_BOOKSHELF)
コード例 #2
0
class TestMorePage():

    @pytest.fixture()
    def more_init(self, scope="function"):
        self.base = Base(self.driver)
        self.home = HomePage(self.driver)
        self.pubmethod = PubMethod(self.driver)
        self.more = MorePage(self.driver)
        logging.info("")
        logging.info("****开始执行用例****")
        self.base.unlock()
        self.pubmethod.stopApp(BROWSER_PACKAGE_NAME)
        self.pubmethod.startApp(BROWSER_PACKAGE_NAME)
        self.home.clickHome()
        self.home.clickHomeOnPage(HOME_PAGE)
        yield
        logging.info("****用例执行结束****")
        logging.info("")


    @allure.story('测试网址导航页面1-头条跳转')
    @pytest.mark.P3
    def test001MorePage(self, more_init):
        '''
        1、在浏览器首页点击导航栏中"更多"按钮,进入到浏览器网址导航页面
        2、点击"头条"
        3、断言是否跳转到"头条"页面

        '''
        # 点击导航栏-》更多
        self.home.clickBusinessMore()
        # 点击网址导航-》头条
        self.more.clickDaoHang(TOUTIAO)
        self.base.assertTrue(TOUTIAO_PAGE)



    @allure.story('测试网址导航页面搜狐跳转')
    @pytest.mark.P1
    def test002MorePage(self, more_init):
        '''
        1、在浏览器首页点击导航栏中"更多"按钮,进入到浏览器网址导航页面
        2、点击"搜狐"
        3、断言是否跳转到"搜狐"页面

        '''
        # 点击导航栏-》更多
        self.home.clickBusinessMore()
        # 点击网址导航-》搜狐
        self.more.clickDaoHang(SOUHU)
        self.base.assertTrue(SOUHU_PAGE, timeout=15)



    @allure.story('测试网址导航页面8-京东跳转')
    @pytest.mark.P1
    def test003MorePage(self, more_init):
        '''
        1、在浏览器首页点击导航栏中"更多"按钮,进入到浏览器网址导航页面
        2、点击"京东"
        3、断言是否跳转到"京东"页面

        '''
        # 点击导航栏-》更多
        self.home.clickBusinessMore()
        # 点击网址导航-》京东
        self.more.clickDaoHang(JD)
        self.base.assertTrue(JD_PAGE, timeout=15)



    @allure.story('测试网址导航页面11-聚划算跳转')
    @pytest.mark.P1
    def test004MorePage(self, more_init):
        '''
        1、在浏览器首页点击导航栏中"更多"按钮,进入到浏览器网址导航页面
        2、点击"聚划算"
        3、断言是否跳转到"聚划算"页面

        '''
        # 点击导航栏-》更多
        self.home.clickBusinessMore()
        # 点击网址导航-》聚划算
        self.more.clickDaoHang(JHS)
        self.base.assertTrue(JHS_PAGE, timeout=15)

    @allure.story('测试网址导航页面4-同城跳转')
    @pytest.mark.P1
    def test005MorePage(self, more_init):
        '''
        1、在浏览器首页点击导航栏中"更多"按钮,进入到浏览器网址导航页面
        2、点击"同城"
        3、断言是否跳转到"同城"页面

        '''
        # 点击导航栏-》更多
        self.home.clickBusinessMore()
        # 点击网址导航-》同城
        self.more.clickDaoHang(TONGCHEN)
        self.base.assertTrue(TONGCHEN_PAGE, timeout=15)

    @allure.story('测试网址导航页面6-找房子跳转')
    @pytest.mark.P1
    def test006MorePage(self, more_init):
        '''
        1、在浏览器首页点击导航栏中"更多"按钮,进入到浏览器网址导航页面
        2、点击"找房子"
        3、断言是否跳转到"找房子"页面

        '''
        # 点击导航栏-》更多
        self.home.clickBusinessMore()
        # 点击网址导航-》找房子
        self.more.clickDaoHang(FINDHOUSE)
        self.base.assertTrue(FINDHOUSE_PAGE, timeout=15)

    @allure.story('测试网址导航页面2-在线商城跳转')
    def test007MorePage(self, more_init):
        '''
        1、在浏览器首页点击导航栏中"在线商城"按钮,进入到浏览器网址导航页面
        2、点击"在线商城"
        3、断言是否跳转到"在线商城"页面

        '''
        # 点击导航栏-》更多
        self.home.clickBusinessMore()
        # 点击网址导航-》在线商城
        self.more.clickDaoHang(MALL)
        self.base.assertTrue(MALL_PAGE)

    @allure.story('测试网址导航页面3-二手市场跳转')
    def test008MorePage(self, more_init):
        '''
        1、在浏览器首页点击导航栏中"二手市场"按钮,进入到浏览器网址导航页面
        2、点击"二手市场"
        3、断言是否跳转到"二手市场"页面

        '''
        # 点击导航栏-》更多
        self.home.clickBusinessMore()
        # 点击网址导航-》二手市场
        self.more.clickDaoHang(FLEA_MARKET)
        self.base.assertTrue(FLEA_MARKET_PAGE)

    @allure.story('测试网址导航页面5-安居客跳转')
    def test009MorePage(self, more_init):
        '''
        1、在浏览器首页点击导航栏中"安居客"按钮,进入到浏览器网址导航页面
        2、点击"安居客"
        3、断言是否跳转到"安居客"页面

        '''
        # 点击导航栏-》更多
        self.home.clickBusinessMore()
        # 点击网址导航-》安居客
        self.more.clickDaoHang(ANJUKE)
        self.base.assertTrue(ANJUKE_PAGE)

    @allure.story('测试网址导航页面7-爱淘宝跳转')
    def test010MorePage(self, more_init):
        '''
        1、在浏览器首页点击导航栏中"爱淘宝"按钮,进入到浏览器网址导航页面
        2、点击"爱淘宝"
        3、断言是否跳转到"爱淘宝"页面

        '''
        # 点击导航栏-》更多
        self.home.clickBusinessMore()
        # 点击网址导航-》爱淘宝
        self.more.clickDaoHang(AITAOBAO)
        self.base.assertTrue(AITAOBAO_PAGE)

    @allure.story('测试网址导航页面9-天猫跳转')
    def test011MorePage(self, more_init):
        '''
        1、在浏览器首页点击导航栏中"天猫"按钮,进入到浏览器网址导航页面
        2、点击"天猫"
        3、断言是否跳转到"天猫"页面

        '''
        # 点击导航栏-》更多
        self.home.clickBusinessMore()
        # 点击网址导航-》天猫
        self.more.clickDaoHang(TIANMAO)
        self.base.assertTrue(TIANMAO_PAGE)

    @allure.story('测试网址导航页面10-拼多多跳转')
    def test012MorePage(self, more_init):
        '''
        1、在浏览器首页点击导航栏中"拼多多"按钮,进入到浏览器网址导航页面
        2、点击"拼多多"
        3、断言是否跳转到"拼多多"页面

        '''
        # 点击导航栏-》更多
        self.home.clickBusinessMore()
        # 点击网址导航-》拼多多
        self.more.clickDaoHang(PINDUODUO)
        self.base.assertTrue(PINDUODUO_PAGE)

    @allure.story('测试网址导航页面12-招聘跳转')
    def test013MorePage(self, more_init):
        '''
        1、在浏览器首页点击导航栏中"招聘"按钮,进入到浏览器网址导航页面
        2、点击"招聘"
        3、断言是否跳转到"招聘"页面

        '''
        # 点击导航栏-》更多
        self.home.clickBusinessMore()
        # 点击网址导航-》招聘
        self.more.clickDaoHang(ZHAOPIN)
        self.base.assertTrue(ZHAOPIN_PAGE)
コード例 #3
0
class TestPubMethod():

    @pytest.fixture(scope="function")
    def pubMethod_init(self):
        self.base = Base(self.driver)
        self.home = HomePage(self.driver)
        self.pubmethod = PubMethod(self.driver)
        logging.info("")
        logging.info("****开始执行用例****")
        self.pubmethod.clearApp(BROWSER_PACKAGE_NAME)
        self.pubmethod.startApp(BROWSER_PACKAGE_NAME)
        yield
        logging.info("****用例执行结束****")
        logging.info("")

#可以在每一个测试用例加一个marker,比如pytest运行的时就只运行带有该marker的测试用例,比如@pytest.mark.P0
    @allure.story('测试隐私弹窗同意按钮')
    def test001PrivacyAgree(self, pubMethod_init):
        '''
        1、清除数据后首次打开浏览器,弹出隐私政策窗口
        2、点击“同意”,弹出权限窗口
        '''

        # 清除数据后首次进入浏览器,点击隐私弹窗同意按钮
        self.pubmethod.clickPrivacyAgree()
        self.base.assertTrue(PERMISSION_TITLE, timeout=5)

    @allure.story('测试隐私弹窗不同意按钮')
    def test002PrivacyDisagree(self, pubMethod_init):
        '''
        1、清除数据后首次打开浏览器,弹出隐私政策窗口
        2、点击“不同意”,退出
        '''

        # 清除数据后首次进入浏览器,点击隐私弹窗不同意按钮
        self.pubmethod.clickPrivacyDisagree()
        self.base.assertTrue(LAUNCHER_ID, timeout=5)

    @allure.story('测试权限弹窗拒绝按钮')
    def test003PermissionDisagree(self, pubMethod_init):
        '''
        1、清除数据后首次打开浏览器,弹出隐私政策窗口
        2、点击“同意”,弹出权限窗口
        3、点击权限弹窗“拒绝”按钮
        '''

        # 清除数据后首次进入浏览器,点击隐私弹窗同意按钮
        self.pubmethod.clickPrivacyAgree()
        # 点击权限弹窗“拒绝”按钮,进入浏览器
        self.pubmethod.clickPermissionDisagree()
        self.base.assertTrue(HOME_PAGE, timeout=5)

    @allure.story('测试权限弹窗允许按钮')
    def test004PermissionAgree(self, pubMethod_init):
        '''
        1、清除数据后首次打开浏览器,弹出隐私政策窗口
        2、点击“同意”,弹出权限窗口
        3、点击权限弹窗“始终允许”按钮
        '''

        # 清除数据后首次进入浏览器,点击隐私弹窗同意按钮
        self.pubmethod.clickPrivacyAgree()
        # 点击权限弹窗“始终允许”按钮,进入浏览器
        self.pubmethod.clickPermissionAgree()
        self.base.assertTrue(HOME_PAGE, timeout=5)
コード例 #4
0
class TestReadPage():

    @pytest.fixture(scope="function")
    def readPage_init(self):
        self.base = Base(self.driver)
        self.home = HomePage(self.driver)
        self.pubmethod = PubMethod(self.driver)
        self.read = ReadPage(self.driver)
        self.searchpanel = SearchPanelPage(self.driver)
        logging.info("")
        logging.info("****开始执行用例****")
        self.pubmethod.clearApp(BROWSER_PACKAGE_NAME)
        self.pubmethod.startApp(BROWSER_PACKAGE_NAME)
        yield
        logging.info("****用例执行结束****")
        logging.info("")

    @allure.story('测试阅读模式')
    def test001ReadPage(self, readPage_init):
        '''

        1、清空浏览器数据,点击电脑版进入小说网页
        2、点击小说封面,开始阅读,进入章节,判断是否首次弹出阅读模式弹框
        3、点击地址栏的阅读模式按钮,判断是否正常进入/退出阅读模式

        '''
        self.pubmethod.clearApp(BROWSER_PACKAGE_NAME)
        self.pubmethod.startApp(BROWSER_PACKAGE_NAME)
        self.pubmethod.clickPrivacyAgree()
        # self.pubmethod.clickPermissionAgree()
        sleep(4)
        self.base.browserWatcher()
        # 点击主页工具菜单
        self.home.clickMore()
        # 点击电脑版
        self.read.clickComputerButton()
        # 点击首页搜索框
        self.home.clickHomeSearch()
        # 搜索框输入m.80txt.la
        self.searchpanel.inputNumber()
        # 点击搜索
        self.searchpanel.clickSearchInto()
        # 点击小说封面
        self.read.clickBook()
        # 点击开始阅读
        self.read.clickRead()
        # 点击章节
        self.read.clickChapter()
        # 断言是否会弹出阅读模式提示框
        self.base.assertTrue(READ_IMG)
        # 点击允许
        self.read.clickOpen()
        sleep(2)
        self.read.clickReadButton()
        # 断言是否进入阅读模式
        self.base.assertTrue(READ_IMG,False)
        # 点击地址栏阅读模式按钮,退出阅读模式
        self.read.clickReadButton()
        # 断言点击地址栏阅读模式按钮,是否正常退出阅读模式
        self.base.assertTrue(READ_NEXT)
        # 点击地址栏阅读模式按钮,进入阅读模式
        self.read.clickReadButton()
        # 断言点击地址栏阅读模式按钮,是否正常进入阅读模式
        self.base.assertTrue(READ_NEXT,False)