Beispiel #1
0
    def test_FeedMounting_313and158and159(self):
        print("\n" + "图集")
        try:
            time.sleep(5)
            self.driver.find_element_by_android_uiautomator(
                "text(\"图片\")").click()
            time.sleep(25)
            # self.driver.find_element_by_xpath("/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.TabHost/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.LinearLayout/android.support.v4.view.ViewPager/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.view.View/android.widget.FrameLayout/android.support.v7.widget.RecyclerView/android.view.View[1]/android.view.View/android.view.View/android.view.View/android.view.View[1]/android.view.View/android.widget.TextView").click()
            # self.driver.tap([(0.5*x, 0.5*y)], 1)
            tpelement = self.driver.find_element_by_id(
                "com.baidu.searchbox:id/feed_viewpager")
            tpelement.find_elements_by_class_name(
                "android.widget.ImageView")[0].click()
            time.sleep(2)
            #左划23次
            for i in range(24):
                time.sleep(1)
                PublicFunction.leftslide(self)

            time.sleep(2)
            vdIconb = self.driver.find_elements_by_id(
                "com.baidu.searchbox:id/relative_album_text")
            vdIconb[1].click()
            self.driver.keyevent(4)
            self.driver.keyevent(4)
        except:
            print("NoSuchElement!")

        self.assertIn("MainActivity", self.driver.current_activity)
Beispiel #2
0
    def test_avideo_515_322(self):
        path = os.path.abspath(os.path.join(os.getcwd(), ".."))
        pathTopic = path + '/' + 'TopicDuration' + '/' + 'video_duration'
        print("\n" + "点击好看视频、视频落地页视频, 测试515,322")
        time.sleep(3)
        self.dialog_idshow()
        try:
            videobar = self.driver.find_elements_by_id("com.baidu.searchbox:id/home_tab_item_textview")[
                1]  # 点击好看视频底bar
            PublicFunction.writeDateToFile(515, 1, pathTopic, 1)
            if videobar.is_displayed():
                videobar.click()
                time.sleep(10)
                image = self.driver.find_elements_by_id("com.baidu.searchbox:id/tab_video_img")[0]  # 点击好看视频列表视频
                if image.is_displayed():
                    image.click()
                    time.sleep(10)
                    try:
                        error_isdispaly = 0
                        self.driver.find_element_by_id(
                            "com.baidu.searchbox:id/feed_video_play_error")  # 视频播放失败浮层,不上报日志
                    except:
                        error_isdispaly = 1
                        print("播放成功!")
                    self.assertNotEqual(error_isdispaly, 0, msg="播放不成功")
                else:
                    print("推荐tab未显示")

                self.driver.find_elements_by_id("com.baidu.searchbox:id/tab_indi_title")[1].click()  # 切换列表tab
                time.sleep(10)
                if image.is_displayed():
                    authors = self.driver.find_elements_by_id(
                        "com.baidu.searchbox:id/tab_video_author_text")  # 获得百家号作者title
                    authors[0].click()  # 点击进入落地页
                    time.sleep(10)
                    self.is_error()
                    self.is_4G()
                    banck = self.driver.find_element_by_id("com.baidu.searchbox:id/redtip_icon")  # 点击落地页返回
                    if banck.is_displayed():
                        banck.click()
                else:
                    print("搞笑tab未显示")
            else:
                print("好看频道未显示")
        except:
            print("未进入手百")
Beispiel #3
0
    def test_FeedMounting_298and59(self):
        print("\n" + "298,59")
        try:
            time.sleep(3)
            PublicFunction.rightslide(self)
            time.sleep(3)
            PublicFunction.rightslide(self)
            time.sleep(10)
            PublicFunction.upslide(self)
            time.sleep(5)
            vdIcon = self.driver.find_elements_by_class_name(
                "android.widget.TextView")
            vdIcon[1].click()
            time.sleep(5)
            self.driver.find_element_by_id(
                "com.baidu.searchbox:id/tab_right_plus").click()
            time.sleep(5)
            # self.driver.find_element_by_xpath("/hierarchy/android.widget.FrameLayout/android.widget.LinearLayout/android.widget.FrameLayout/android.widget.FrameLayout/android.widget.RelativeLayout/android.widget.RelativeLayout/android.support.v7.widget.RecyclerView/android.widget.RelativeLayout[25]/android.widget.TextView").click()
            # 点击添加频道下的频道
            feed_multi_tab_item_title_arr = self.driver.find_elements_by_id(
                'com.baidu.searchbox:id/feed_multi_tab_item_title')
            # 关注和推荐不可移动,所以从2开始,没必要添加太多tab
            for i in range(10, 12):
                feed_multi_tab_item_title_arr[i].click()
            time.sleep(5)
            self.driver.keyevent(4)
            time.sleep(2)
        except:
            print("NoSuchElement!")

        self.assertIn("MainActivity", self.driver.current_activity)
Beispiel #4
0
 def test_Publish_593_1(self):
     print("ugc1 - 593")
     # 点击关注tab,切换到关注tab下
     # self.driver.find_element_by_xpath("//android.widget.TextView").click()
     time.sleep(3)
     PublicFunction.rightslide(self)
     PublicFunction.rightslide(self)
     # 等待10秒,待元素加载完成
     time.sleep(30)
     # 点击发文字,进入发布界面,触发打点时机,type=show
     self.driver.find_element_by_android_uiautomator("text(\"发文字\")").click()
     time.sleep(3)
     # self.driver.find_element_by_xpath("//android.view.ViewGroup/android.widget.TextView[1]").click()
     # 点击表情入口,调起表情键盘,触发打点时机,type=emoji_click
     self.driver.find_element_by_id("com.baidu.searchbox:id/ugc_emoij").click()
     time.sleep(3)
     # 点击图片入口,调起相册,触发打点时机,type=photo_click (图片入口的点击)
     self.driver.find_element_by_id("com.baidu.searchbox:id/ugc_pic_entrance").click()
     time.sleep(3)
     # 点击取消按钮,返回发布器
     self.driver.find_element_by_id("com.baidu.searchbox:id/ugc_cancel").click()
     time.sleep(3)
     # 点击@入口,调起联系人选择页,触发打点时机,type=at_click
     self.driver.find_element_by_id("com.baidu.searchbox:id/ugc_at").click()
     # 点击物理返回键
     self.driver.press_keycode(4)
     # 点击#入口,调起话题聚合页,触发打点时机,page=topic_click
     self.driver.find_element_by_id("com.baidu.searchbox:id/ugc_topic").click()
     # 等待1秒,待话题加载完成
     time.sleep(1)
     # 点击物理返回键
     self.driver.press_keycode(4)
     # 在发布器内输入文字
     self.driver.find_element_by_id("com.baidu.searchbox:id/ugc_edittext").send_keys("demo")
     # 点击发布按钮,触发打点时机,type=pub_click ( 发布按钮的点击)
     self.driver.find_element_by_id("com.baidu.searchbox:id/ugc_publish").click()
Beispiel #5
0
    def test_avideo_485(self):
        path = os.path.abspath(os.path.join(os.getcwd(), ".."))
        pathTopic = path + '/' + 'TopicDuration' + '/' + 'video_duration'
        time.sleep(10)
        self.dialog_idshow()
        try:
            videobar = self.driver.find_elements_by_id("com.baidu.searchbox:id/home_tab_item_textview")[
                1]  # 点击好看视频底bar
            if videobar.is_displayed():
                videobar.click()
                time.sleep(10)
                channelvideo1 = self.driver.find_elements_by_id("com.baidu.searchbox:id/tab_video_img")[
                    0]  # 点击好看视频列表视频
                if channelvideo1.is_displayed():
                    channelvideo1.click()
                    starttime5 = time.time()
                    time.sleep(20)
                    self.driver.find_elements_by_id("com.baidu.searchbox:id/tab_video_img")[1].click()  # 切换列表视频
                    endtime5 = time.time()
                    duration5 = endtime5 - starttime5
                    PublicFunction.writeDateToFile(485, 5, pathTopic, duration5)

                    starttime4 = endtime5
                    time.sleep(20)
                    self.driver.find_elements_by_id("com.baidu.searchbox:id/tab_indi_title")[1].click()  # 切换列表tab
                    endtime4 = time.time()
                    duration4 = endtime4 - starttime4
                    PublicFunction.writeDateToFile(485, 4, pathTopic, duration4)

                    time.sleep(5)
                    self.driver.find_elements_by_id("com.baidu.searchbox:id/tab_video_author_text")[
                        0].click()  # 进入视频落地页
                    starttime3 = time.time()
                    time.sleep(15)
                    author = self.driver.find_element_by_id(
                        "com.baidu.searchbox:id/video_detail_author")  # 跳转到百家号作者页
                    endtime3 = time.time()
                    if author.is_displayed():
                        author.click()
                        duration3 = endtime3 - starttime3
                        PublicFunction.writeDateToFile(485, 3, pathTopic, duration3)
                        # self.assertTrue(author.is_displayed(), "落地页推荐视频加载成功")

                        time.sleep(5)
                        self.driver.find_element_by_id("com.baidu.searchbox:id/redtip_icon").click()  # 返回到视频落地页
                        starttime2 = time.time()
                        time.sleep(10)
                        recommend = self.driver.find_elements_by_id("com.baidu.searchbox:id/feed_content")[
                            1]  # 点击视频落地页推荐视频
                        if recommend.is_displayed():
                            recommend.click()
                            endtime2 = time.time()
                            duration2 = endtime2 - starttime2
                            PublicFunction.writeDateToFile(485, 2, pathTopic, duration2)

                            starttime1 = endtime2
                            time.sleep(10)
                            self.driver.find_element_by_id("com.baidu.searchbox:id/redtip_icon").click()  # 点击落地页返回键
                            endtime1 = time.time()
                            duration1 = endtime1 - starttime1
                            PublicFunction.writeDateToFile(485, 1, pathTopic, duration1)

                        else:
                            self.driver.find_element_by_id("com.baidu.searchbox:id/redtip_icon").click()  # 点击落地页返回键
                            print("没有推荐视频")
                    else:
                        self.driver.find_element_by_id("com.baidu.searchbox:id/redtip_icon").click()  # 点击落地页返回键
                        print("推荐视频加载失败或没有百家号作者")
                else:
                    print("列表页没有加载成功~")
            else:
                print("好看底bar未显示")

        except:
            print("未进入手百!")
Beispiel #6
0
 def setUp(self):
     self.driver = PublicFunction.appium_start()
Beispiel #7
0
    def test_FeedMounting_507and61and346(self):
        # starttime = time.time()
        try:
            # 非吸顶态时长--507
            starttime507_3 = time.time()
            time.sleep(20)
            endtime507_3 = time.time()

            # 右划,非吸顶态的时长 --507
            PublicFunction.rightslide(self)
            starttime507_2 = time.time()
            time.sleep(20)
            endtime507_2 = time.time()

            # 上滑,进入吸顶态的时长 --61
            PublicFunction.upslide(self)
            starttime61_3 = time.time()
            time.sleep(20)
            endtime61_3 = time.time()

            # 左划, 进入吸顶态的时长 --61
            PublicFunction.leftslide(self)
            starttime61_2 = time.time()
            time.sleep(20)
            endtime61_2 = time.time()

            # 返回, 进入吸顶态的时长 --61
            self.driver.keyevent(4)
            starttime507_1 = time.time()
            time.sleep(20)
            endtime507_1 = time.time()

            # 点击落地页, 落地页时长打点--346
            self.driver.find_element_by_id(
                "com.baidu.searchbox:id/feed_template_base_title_id").click()
            starttime346_1 = time.time()
            time.sleep(20)
            endtime346_1 = time.time()

            # 返回到推荐列表,进入吸顶态的时长 --61
            self.driver.keyevent(4)
            starttime61_1 = time.time()
            time.sleep(20)
            endtime61_1 = time.time()
            self.driver.keyevent(4)
        except:
            print("NoSuchElement!")
        self.assertIn("MainActivity", self.driver.current_activity)
        duration507_1 = endtime507_1 - starttime507_1
        duration507_2 = endtime507_2 - starttime507_2
        duration507_3 = endtime507_3 - starttime507_3
        duration61_1 = endtime61_1 - starttime61_1
        duration61_2 = endtime61_2 - starttime61_2
        duration61_3 = endtime61_3 - starttime61_3
        duration346_1 = endtime346_1 - starttime346_1

        path = os.path.abspath(os.path.join(os.getcwd(), ".."))
        pathTopic = path + '/' + 'TopicDuration' + '/' + 'feed_duration'
        PublicFunction.writeDateToFile(507, 1, pathTopic, duration507_1)
        PublicFunction.writeDateToFile(507, 2, pathTopic, duration507_2)
        PublicFunction.writeDateToFile(507, 3, pathTopic, duration507_3)
        PublicFunction.writeDateToFile(61, 1, pathTopic, duration61_1)
        PublicFunction.writeDateToFile(61, 2, pathTopic, duration61_2)
        PublicFunction.writeDateToFile(61, 3, pathTopic, duration61_3)
        PublicFunction.writeDateToFile(346, 1, pathTopic, duration346_1)
Beispiel #8
0
 def test_TTSBroadcastDuration_724(self):
     path = os.path.abspath(os.path.join(os.getcwd(), ".."))
     pathTopic = path + '/' + 'TopicDuration' + '/' + 'tts_duration'
     time.sleep(3)
     # 判断耳机是否存在,如果存在说明当前是处于看听模式
     element_exist = CommonAction.isElement(
         self, 'id', 'com.baidu.searchbox:id/tab_right_tts')
     if element_exist:
         # 判断播报按钮是否存在,如果存在说明已经打开看听模式
         element_exist = CommonAction.isElement(
             self, 'id', 'com.baidu.searchbox:id/feed_id_radio_icon_tag')
         if element_exist:
             broadcastIcon = self.driver.find_elements_by_id(
                 "com.baidu.searchbox:id/feed_id_radio_icon_tag")  # 播放图标
             broadcastIcon[1].click()
             starttime4 = time.time()
         else:
             headsetIcon = self.driver.find_element_by_id(
                 "com.baidu.searchbox:id/tab_right_tts")  # 小耳机图标
             headsetIcon.click()
             broadcastIcon = self.driver.find_elements_by_id(
                 "com.baidu.searchbox:id/feed_id_radio_icon_tag")
             broadcastIcon[2].click()
             starttime4 = time.time()
         '''在迷你bar按下一条按钮'''
         time.sleep(5)  #实际测试时改成10或15
         miniPauseIcon = self.driver.find_element_by_id(
             "com.baidu.searchbox:id/radio_mini_play_pause")
         radio_mini_play_next = self.driver.find_elements_by_id(
             "com.baidu.searchbox:id/radio_mini_play_next")[
                 0]  #mini bar 下一条按键
         radio_mini_play_next.click()
         endtime4 = time.time()
         duration4 = endtime4 - starttime4
         PublicFunction.writeDateToFile(724, 4, pathTopic, duration4)
         print("\n" + "在迷你bar按下一条按钮")
         print(duration4)
         '''在迷你bar点击关闭按钮'''
         starttime3 = time.time()
         time.sleep(5)  # 实际测试时改成10或15
         miniPauseIcon.click()  #从minibar关闭播放
         endtime3 = time.time()
         duration3 = endtime3 - starttime3
         PublicFunction.writeDateToFile(724, 3, pathTopic, duration3)
         print("\n" + "在迷你bar点击关闭按钮")
         print(duration3)
         '''进入全屏态后,点击开始按钮'''
         fullIcon = self.driver.find_element_by_id(
             "com.baidu.searchbox:id/radio_mini_tts_album_cover")
         fullIcon.click()  #进入全屏态播放器
         time.sleep(3)
         fullMusicPause = self.driver.find_element_by_id(
             "com.baidu.searchbox:id/music_play_pause")
         fullMusicPause.click()  #开启全屏态播放
         starttime2 = time.time()
         time.sleep(5)  #实际测试时改成10或15
         '''在全屏态页面,点击上一首按钮'''
         music_previous = self.driver.find_element_by_id(
             "com.baidu.searchbox:id/music_previous")
         music_previous.click()
         starttime1 = endtime2 = time.time()
         duration2 = endtime2 - starttime2
         PublicFunction.writeDateToFile(724, 2, pathTopic, duration2)
         print("\n" + "进入全屏态后,开始播放后,点击上一首按钮")
         print(duration2)
         '''返回首页,关闭看听模式'''
         time.sleep(5)
         self.driver.keyevent(4)
         headsetIcon.click()
         endtime1 = time.time()
         duration1 = endtime1 - starttime1
         PublicFunction.writeDateToFile(724, 1, pathTopic, duration1)
         print("\n" + "返回首页,关闭看听模式")
         print(duration1)
         time.sleep(3)
     else:
         print("当前处于非看听模式")