예제 #1
0
    def test_addShortBlog002(self):
        '''发布单张图片+文字的短微博'''
        #先上传图片
        # m={'pic': ('image.gif', open("../../file/image.gif", 'rb'), 'image/gif')}    #这样上传文件post中用files,但是文件太大,选择用数据流传送MultipartEncoder
        m = MultipartEncoder(fields={
            "pic": ("image.jpg", open("../../file/image.jpg", "rb"),
                    "image/jpeg")
        })
        self.headers['Content-Type'] = m.content_type
        imageRes = requests.post(userData['hostName'] +
                                 socialData['singleFileUpload_url'],
                                 data=m,
                                 headers=self.headers)
        # imageRes=newSocial.singleFileUpload(userData['hostName']+socialData['singleFileUpload_url'],datas = m,headers = self.headers)
        print(imageRes.text)
        #断言返回200,上传图片成功,返回code=0,上传图片成功
        self.assertEqual(imageRes.status_code, userData['status_code_200'])
        self.assertEqual(json.loads(imageRes.text)['code'], 0)
        #获取上传图片的url,用于发短微博
        imageUrl = json.loads(imageRes.text)['data']
        # print("",)
        imageUrl['Url'] = imageUrl['url']
        print("imageUrl", imageUrl)
        del imageUrl['url']
        imageUrl['ContentType'] = 'jpg'
        listImage = []
        listImage.append(imageUrl)
        print("imageUrl", imageUrl)
        print("listImage", listImage)

        blogParams = {
            "isLongBlog": False,  # boolean  true表示长微博,false表示短微博
            "body": "test",  # 短微博内容
            "files": listImage,  #files图片文件为数组
            "blogType": 0,  # 微博类型:0:普通微博;1:公告;2:品种资讯;3:交易动态
            "symbol": "",
            "postType":
            0  # 发布类型: 0-用户微博,1-推广,2-认证用户微博,3-名人大咖,4-分析师,5-媒体号,6-经纪商
        }

        self.headers['Content-Type'] = "application/json; charset=utf-8"
        addShortBlogRes = newSocial.addBlog(userData['hostName'] +
                                            socialData['addBlog_url'],
                                            headers=self.headers,
                                            datas=blogParams)
        #断言返回200,发微博成功,code=0发微博成功
        self.assertEqual(addShortBlogRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(json.loads(addShortBlogRes.text)['code'], 0)
        #获取微博id,用于删除微博
        blogId = json.loads(addShortBlogRes.text)['data']['ObjectId']

        #检查我的微博列表

        #删除微博
        delBlogRes = newSocial.delBlogById(
            userData['hostName'] + socialData['delBlogById_url'] + str(blogId),
            headers=self.headers)
        self.assertEqual(delBlogRes.status_code, userData['status_code_200'])
        self.assertEqual(json.loads(delBlogRes.text)['code'], 0)
예제 #2
0
    def tearDown(self):
        #清空测试环境
        #删除微博
        delBlogRes = newSocial.delBlogById(userData['hostName'] +
                                           socialData['delBlogById_url'] +
                                           str(self.blogId),
                                           headers=self.headers)
        self.assertEqual(delBlogRes.status_code, userData['status_code_200'])
        self.assertEqual(json.loads(delBlogRes.text)['code'], 0)

        #退出登录
        signoutRes = Auth.signout(userData['hostName'] +
                                  authData['signout_url'],
                                  datas=self.headers)
        self.assertEqual(signoutRes.status_code, userData['status_code_200'])
예제 #3
0
파일: blogList.py 프로젝트: dxcv/webApiTest
    def test_blogShare002(self):
        #分享微博
        '''发纯文字短微博'''
        blogParams = {
            "isLongBlog": False,  #boolean  true表示长微博,false表示短微博
            "body": "test short blog test",  #短微博内容
            "blogType": 0,  #微博类型:0:普通微博;1:公告;2:品种资讯;3:交易动态
            "symbol": "",
            "postType": 0  #发布类型: 0-用户微博,1-推广,2-认证用户微博,3-名人大咖,4-分析师,5-媒体号,6-经纪商
        }
        shortBlogRes = newSocial.addBlog(userData['hostName'] +
                                         socialData['addBlog_url'],
                                         headers=self.headers,
                                         datas=blogParams)
        #断言返回200,发布微博成功
        self.assertEqual(shortBlogRes.status_code, userData['status_code_200'],
                         "微博发布失败")
        #获取微博id,用于删除微博
        shortBlogId = json.loads(shortBlogRes.text)['data']['ObjectId']

        #休眠2秒后再获取我的微博
        time.sleep(2)
        #微博发布成功,检查微博全部动态
        params = {"pageIndex": 1, "pageSize": 15}  #有默认值可以不用传参
        getAllBlog = newSocial.getAllBlog(userData['hostName'] +
                                          socialData['getMyBlogs_url'],
                                          headers=self.headers)
        #断言返回200,code=0,获取微博列表成功
        self.assertEqual(getAllBlog.status_code, userData['status_code_200'])
        self.assertEqual(json.loads(getAllBlog.text)['code'], 0)
        # 获取微博动态第一条微博id
        blogId = json.loads(getAllBlog.text)['data']['Items'][0]['Id']
        #断言,微博动态第一条微博id等于刚发布的短微博id
        self.assertEqual(blogId, shortBlogId)
        #分享微博
        blogShare = newSocial.blogShare(userData['hostName'] +
                                        socialData['blogShare_url'] +
                                        str(shortBlogId),
                                        headers=self.headers)
        #删除微博
        delBlogRes = newSocial.delBlogById(userData['hostName'] +
                                           socialData['delBlogById_url'] +
                                           str(shortBlogId),
                                           headers=self.headers)
        self.assertEqual(delBlogRes.status_code, userData['status_code_200'])
        self.assertEqual(json.loads(delBlogRes.text)['code'], 0)
예제 #4
0
    def test_addShortBlog003(self):
        '''发带品种标签的短微博'''
        blogParams = {
            "isLongBlog": False,  # boolean  true表示长微博,false表示短微博
            "body": "$AUD/JPY$ test",  # 短微博内容
            "blogType": 0,  # 微博类型:0:普通微博;1:公告;2:品种资讯;3:交易动态
            "symbol": "",
            "postType":
            0  # 发布类型: 0-用户微博,1-推广,2-认证用户微博,3-名人大咖,4-分析师,5-媒体号,6-经纪商
        }
        addShortBlogRes = newSocial.addBlog(userData['hostName'] +
                                            socialData['addBlog_url'],
                                            headers=self.headers,
                                            datas=blogParams)
        #断言返回200,发微博成功,code=0发微博成功
        self.assertEqual(addShortBlogRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(json.loads(addShortBlogRes.text)['code'], 0)
        #获取微博id,用于删除微博
        blogId = json.loads(addShortBlogRes.text)['data']['ObjectId']

        #获取品种资讯列表
        #userData['type']博客类型:0-普通微博,1-公告,2-品种资讯,3-交易动态
        time.sleep(2)
        symbolBlogRes = newSocial.getBlogByType(
            userData['hostName'] + socialData['getBlogByType_url'] +
            str(userData['type']),
            headers=self.headers)
        #断言返回200,code=0,获取品种列表成功
        self.assertEqual(symbolBlogRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(json.loads(symbolBlogRes.text)['code'], 0)
        #获取品种资讯列表所有微博,断言,刚发布的品种微博存在于品种资讯列表中
        listBlog = json.loads(symbolBlogRes.text)['data']['Items']
        listBlogId = []
        for i in listBlog:
            listBlogId.append(i['Id'])
        self.assertIn(blogId, listBlogId)

        #删除微博
        delBlogRes = newSocial.delBlogById(
            userData['hostName'] + socialData['delBlogById_url'] + str(blogId),
            headers=self.headers)
        self.assertEqual(delBlogRes.status_code, userData['status_code_200'])
        self.assertEqual(json.loads(delBlogRes.text)['code'], 0)
예제 #5
0
    def test_addShortBlog004(self):
        '''发布@用户的微博'''

        # 登录账号
        signinPrams = {
            "account": userData['followAccount'],
            "password": userData['followPasswd'],
            "remember": False
        }
        signinRes = Auth.signin(userData['hostName'] + authData['signin_url'],
                                headers=userData['headers'],
                                datas=signinPrams)
        # 断言返回200,登录成功
        self.assertEqual(signinRes.status_code, userData['status_code_200'])
        # 获取headers
        token = json.loads(signinRes.text)['data']['token']
        headers = dict(
            userData['headers'],
            **{userData['Authorization']: userData['Bearer'] + token})
        nickName = json.loads(signinRes.text)['data']['nickname']

        #发布微博
        blogParams = {
            "isLongBlog": False,  # boolean  true表示长微博,false表示短微博
            "body": "test short blog at user @" + nickName,  # 短微博内容
            "blogType": 0,  # 微博类型:0:普通微博;1:公告;2:品种资讯;3:交易动态
            "symbol": "",
            "postType":
            0  # 发布类型: 0-用户微博,1-推广,2-认证用户微博,3-名人大咖,4-分析师,5-媒体号,6-经纪商
        }
        addShortBlogRes = newSocial.addBlog(userData['hostName'] +
                                            socialData['addBlog_url'],
                                            headers=self.headers,
                                            datas=blogParams)
        #断言返回200,发微博成功,code=0发微博成功
        self.assertEqual(addShortBlogRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(json.loads(addShortBlogRes.text)['code'], 0)
        #获取微博id,用于删除微博
        blogId = json.loads(addShortBlogRes.text)['data']['ObjectId']

        #获取@我的微博
        getAtMeBlogRes = newSocial.getAtMeBlogAndComment(
            userData['hostName'] + socialData['getAtMeBlogAndComment_url'] +
            str(userData['atmeType_blog']),
            headers=headers)
        #断言200,code=0,获取@我的微博成功
        self.assertEqual(getAtMeBlogRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(json.loads(getAtMeBlogRes.text)['code'], 0)

        #刚发布的微博id=@我的微博列表第一条微博
        atMeBlogList = json.loads(getAtMeBlogRes.text)['data']['Items']
        atMeBlogInfoList = []
        for i in atMeBlogList:
            atMeBlogInfoList.append(i['BlogInfo'])
        self.assertEqual(blogId, atMeBlogInfoList[0]['Id'])

        # 删除微博
        delBlogRes = newSocial.delBlogById(
            userData['hostName'] + socialData['delBlogById_url'] + str(blogId),
            headers=self.headers)
        self.assertEqual(delBlogRes.status_code, userData['status_code_200'])
        self.assertEqual(json.loads(delBlogRes.text)['code'], 0)
예제 #6
0
    def test_getAtMeComment(self):
        '''发布@用户的评论,检查用户的@我的评论列表'''
        blogParams = {
            "isLongBlog": False,  #boolean  true表示长微博,false表示短微博
            "body": "test short blog test",  #短微博内容
            "blogType": 0,  #微博类型:0:普通微博;1:公告;2:品种资讯;3:交易动态
            "symbol": "",
            "postType": 0  #发布类型: 0-用户微博,1-推广,2-认证用户微博,3-名人大咖,4-分析师,5-媒体号,6-经纪商
        }
        shortBlogRes = newSocial.addBlog(userData['hostName'] +
                                         socialData['addBlog_url'],
                                         headers=self.headers,
                                         datas=blogParams)
        #断言返回200,发布微博成功
        self.assertEqual(shortBlogRes.status_code, userData['status_code_200'],
                         "微博发布失败")
        #获取微博id,用于删除微博
        blogId = json.loads(shortBlogRes.text)['data']['ObjectId']

        #登录账号B对微博进行评论并@账号A
        #登录账号B
        siginFollowParams = {
            "account": userData['followAccount'],
            "password": userData['followPasswd'],
            "remember": False
        }
        siginFollowRes = Auth.signin(userData['hostName'] +
                                     authData['signin_url'],
                                     headers=userData['headers'],
                                     datas=siginFollowParams)
        #断言返回200登录成功
        self.assertEqual(siginFollowRes.status_code,
                         userData['status_code_200'])
        #获取headers
        followToken = json.loads(siginFollowRes.text)['data']['token']
        followHeaders = dict(
            userData['headers'],
            **{userData['Authorization']: userData['Bearer'] + followToken})

        #发布对微博的评论,并@用户A
        addCommentParams = {
            "content": "comment blog at me @" + self.nickName,
            "toUserId": self.userId,  #被评论人id
            "blogId": blogId  #微博id
        }
        addCommentRes = newSocial.addComment(userData['hostName'] +
                                             socialData['addComment_url'],
                                             headers=followHeaders,
                                             datas=addCommentParams)
        #断言返回200,code=0,发布评论成功
        self.assertEqual(addCommentRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(json.loads(addCommentRes.text)['code'], 0)

        #获取该微博的评论列表
        # params={"pageIndex":1,"pageSize":15}  #有默认值可以不用传参
        commentListRes = newSocial.getCommentList(
            userData['hostName'] + socialData['getCommentList_url'] +
            str(blogId),
            headers=self.headers)
        #断言返回200,code=0,获取微博评论列表成功
        self.assertEqual(commentListRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(json.loads(commentListRes.text)['code'], 0)
        #取出该微博的评论id
        commentId = json.loads(commentListRes.text)['data']['Items'][0]['Id']

        #检查用户A的@我的评论列表
        getAtMeCommentRes = newSocial.getAtMeBlogAndComment(
            userData['hostName'] + socialData['getAtMeBlogAndComment_url'] +
            str(userData['atmeType_comment']),
            headers=self.headers)
        #断言200,code=0,获取@我的微博成功
        self.assertEqual(getAtMeCommentRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(json.loads(getAtMeCommentRes.text)['code'], 0)

        #刚发布的评论id=@我的评论第一条数据
        atMeCommentList = json.loads(getAtMeCommentRes.text)['data']['Items']
        atMeCommentInfoList = []
        for i in atMeCommentList:
            atMeCommentInfoList.append(i['CommentInfo'])
        self.assertEqual(commentId, atMeCommentInfoList[0]['Id'])

        #删除评论
        delCommentRes = newSocial.delComment(userData['hostName'] +
                                             socialData['delComment_url'] +
                                             str(commentId),
                                             headers=followHeaders)
        self.assertEqual(delCommentRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(json.loads(delCommentRes.text)['code'], 0)

        # 删除微博
        delBlogRes = newSocial.delBlogById(
            userData['hostName'] + socialData['delBlogById_url'] + str(blogId),
            headers=self.headers)
        self.assertEqual(delBlogRes.status_code, userData['status_code_200'])
        self.assertEqual(json.loads(delBlogRes.text)['code'], 0)
예제 #7
0
    def test_addOrCancelCollectBlog(self):
        '''收藏微博,检查我的收藏列表,取消收藏'''
        #发布微博
        blogParams = {
            "isLongBlog": False,  # boolean  true表示长微博,false表示短微博
            "body": "test short blog test",  # 短微博内容
            "blogType": 0,  # 微博类型:0:普通微博;1:公告;2:品种资讯;3:交易动态
            "symbol": "",
            "postType":
            0  # 发布类型: 0-用户微博,1-推广,2-认证用户微博,3-名人大咖,4-分析师,5-媒体号,6-经纪商
        }
        shortBlogRes = newSocial.addBlog(userData['hostName'] +
                                         socialData['addBlog_url'],
                                         headers=self.headers,
                                         datas=blogParams)
        # 断言返回200,发布微博成功
        self.assertEqual(shortBlogRes.status_code, userData['status_code_200'],
                         "微博发布失败")
        self.assertEqual(
            json.loads(shortBlogRes.text)['code'], userData['code_0'])
        # 获取微博id,用于删除微博
        blogId = json.loads(shortBlogRes.text)['data']['ObjectId']

        #收藏微博
        collectBlogParams = {
            "objId": blogId,  #被收藏的微博ID
            "type": 0  #type=0微博
        }
        collectBlogRes = newSocial.addOrCancelCollect(
            userData['hostName'] + socialData['addOrCancelCollect_url'],
            headers=self.headers,
            datas=collectBlogParams)
        #断言返回200,code=0,收藏微博成功
        self.assertEqual(collectBlogRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(
            json.loads(collectBlogRes.text)['code'], userData['code_0'])

        #检查我的收藏列表
        collectBlogListRes = newSocial.getMyCollect(
            userData['hostName'] + socialData['getMyCollect_url'],
            headers=self.headers)
        #断言返回200,code=0,获取我的收藏列表成功
        self.assertEqual(collectBlogListRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(
            json.loads(collectBlogListRes.text)['code'], userData['code_0'])
        #获取我的收藏列表第一条微博
        collectBlogId = json.loads(
            collectBlogListRes.text)['data']['Items'][0]['BlogInfo']['Id']
        self.assertEqual(blogId, collectBlogId)

        #取消收藏
        cancelCollectBlogRes = newSocial.addOrCancelCollect(
            userData['hostName'] + socialData['addOrCancelCollect_url'],
            headers=self.headers,
            datas=collectBlogParams)
        #断言返回200,code=0,收藏微博成功
        self.assertEqual(cancelCollectBlogRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(
            json.loads(cancelCollectBlogRes.text)['code'], userData['code_0'])

        #删除微博
        delBlogRes = newSocial.delBlogById(
            userData['hostName'] + socialData['delBlogById_url'] + str(blogId),
            headers=self.headers)
        self.assertEqual(delBlogRes.status_code, userData['status_code_200'])
        self.assertEqual(json.loads(delBlogRes.text)['code'], 0)
예제 #8
0
    def test_getCommentFromMe(self):
        '''登录,发布微博,并评论,获取我评论的列表-》删除评论,删除微博,退出登录'''

        #发布微博
        blogParams = {
            "isLongBlog": False,  # boolean  true表示长微博,false表示短微博
            "body": "test short blog test",  # 短微博内容
            "blogType": 0,  # 微博类型:0:普通微博;1:公告;2:品种资讯;3:交易动态
            "symbol": "",
            "postType":
            0  # 发布类型: 0-用户微博,1-推广,2-认证用户微博,3-名人大咖,4-分析师,5-媒体号,6-经纪商
        }
        shortBlogRes = newSocial.addBlog(userData['hostName'] +
                                         socialData['addBlog_url'],
                                         headers=self.headers,
                                         datas=blogParams)
        # 断言返回200,发布微博成功
        self.assertEqual(shortBlogRes.status_code, userData['status_code_200'],
                         "微博发布失败")
        self.assertEqual(
            json.loads(shortBlogRes.text)['code'], userData['code_0'])
        # 获取微博id,用于删除微博
        blogId = json.loads(shortBlogRes.text)['data']['ObjectId']

        #对微博进行评论
        addCommentParams = {
            "content": "comment blog",
            "toUserId": self.userId,  #被评论人id
            "blogId": blogId  #微博id
        }
        addCommentRes = newSocial.addComment(userData['hostName'] +
                                             socialData['addComment_url'],
                                             headers=self.headers,
                                             datas=addCommentParams)
        #断言返回200,code=0,发布评论成功
        self.assertEqual(addCommentRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(json.loads(addCommentRes.text)['code'], 0)

        #获取该微博的评论列表
        # params={"pageIndex":1,"pageSize":15}  #有默认值可以不用传参
        commentListRes = newSocial.getCommentList(
            userData['hostName'] + socialData['getCommentList_url'] +
            str(blogId),
            headers=self.headers)
        #断言返回200,code=0,获取微博评论列表成功
        self.assertEqual(commentListRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(json.loads(commentListRes.text)['code'], 0)
        #取出该微博的评论id
        commentId = json.loads(commentListRes.text)['data']['Items'][0]['Id']

        #获取我评论的列表
        # params={"pageIndex":1,"pageSize":15}  #有默认值可以不用传参
        commentFromMeRes = newSocial.getCommentFromMe(
            userData['hostName'] + socialData['getCommentFromMe_url'],
            headers=self.headers)
        #断言返回200,code=0,获取我评论的列表成功
        self.assertEqual(commentFromMeRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(json.loads(commentFromMeRes.text)['code'], 0)
        #断言,刚发布的评论存在于我评论的列表中
        commentList = json.loads(commentFromMeRes.text)['data']['Items']
        commentIdList = []
        for i in commentList:
            commentIdList.append(i['Id'])
        self.assertIn(commentId, commentIdList)

        # #删除评论
        # delCommentRes=newSocial.delComment(userData['hostName']+socialData['delComment_url']+str(commentId),headers = self.headers)
        # self.assertEqual(delCommentRes.status_code,userData['status_code_200'])
        # self.assertEqual(json.loads(delCommentRes.text)['code'],0)

        #删除微博
        delBlogRes = newSocial.delBlogById(
            userData['hostName'] + socialData['delBlogById_url'] + str(blogId),
            headers=self.headers)
        self.assertEqual(delBlogRes.status_code, userData['status_code_200'])
        self.assertEqual(json.loads(delBlogRes.text)['code'], 0)
예제 #9
0
    def test_signin(self):
        '''登录followme系统'''
        datas = {
            "account": webAPIData['account'],
            "password": webAPIData['passwd'],
            "remember": "false"
        }
        signinRes = Auth.signin(
            webAPIData['hostName'] + authData['signin_url'],
            webAPIData['headers'], datas)
        '''登录成功,返回200 ok'''
        self.assertEqual(signinRes.status_code, webAPIData['status_code_200'])
        # 保存登录时的token,待登出使用
        self.token = json.loads(signinRes.text)['data']['token']
        # 规整headers
        webAPIData['headers'][
            webAPIData['Authorization']] = webAPIData['Bearer'] + self.token

        #1、获取所有微博动态
        getAllBlogRes = newSocial.getAllBlog(userData['hostName'] +
                                             socialData['getAllBlog_url'],
                                             headers=webAPIData['headers'])
        #断言返回200,code=0,获取所有微博动态成功
        self.assertEqual(getAllBlogRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(json.loads(getAllBlogRes.text)['code'], 0)

        #2、获取热门微博
        getHotBlogRes = newSocial.getHotBlog(userData['hostName'] +
                                             socialData['getHotBlog_url'],
                                             headers=webAPIData['headers'])
        #断言返回200,code=0,获取所有微博动态成功
        self.assertEqual(getHotBlogRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(json.loads(getHotBlogRes.text)['code'], 0)

        #3、按推荐位获取热门推荐-微博详情页
        # 推荐位  1 - 首页 2 - 微博详情 3 - 个人中心
        location = '2'
        getBlogByLocationRes = newSocial.getBlogByLocation(
            userData['hostName'] + socialData['getBlogByLocation_url'] +
            location,
            headers=webAPIData['headers'])
        #断言返回200,code=0,获取所有微博动态成功
        self.assertEqual(getBlogByLocationRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(json.loads(getBlogByLocationRes.text)['code'], 0)

        #4、根据PostType类型获取相应的微博
        # 发布类型0:用户微博 1:推广 2:认证用户微博 3:名人大咖 4:分析师 5:媒体号 6:经纪商  默认值: 0
        type = '3'
        getBlogByPostTypeRes = newSocial.getBlogByPostType(
            userData['hostName'] + socialData['getBlogByPostType_url'] + type,
            headers=webAPIData['headers'])
        #断言返回200,code=0,根据PostType类型获取相应的微博成功
        self.assertEqual(getBlogByPostTypeRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(json.loads(getBlogByPostTypeRes.text)['code'], 0)
        self.LastId = json.loads(getBlogByPostTypeRes.text)['data']['LastId']
        print('LastId:', self.LastId)

        #6、获取公告banner列表
        getNoticeListRes = newSocial.getNoticeList(
            userData['hostName'] + socialData['getNoticeList_url'],
            headers=webAPIData['headers'])
        #断言返回200,code=0,获取公告banner列表
        self.assertEqual(getNoticeListRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(json.loads(getNoticeListRes.text)['code'], 0)

        # #7、获取微博最后ID
        # # 类型:0 - 全部动态,1 - 热门微博,2 - 交易动态,3 - 品种咨询,4 - 大咖秀,5 - 评论分析,6 - 经纪商动态  默认值: 0
        # par = {"type ": 3}
        # getLastIdRes=newSocial.getLastId(userData['hostName']+socialData['getLastId_url'],params = par,headers = webAPIData['headers'])
        # #断言返回200,code=0,获取微博最后ID成功
        # self.assertEqual(getLastIdRes.status_code,userData['status_code_200'])
        # self.assertEqual(json.loads(getLastIdRes.text)['code'],0)

        # 8、获取全局提醒列表[需要登录]
        getGlobalRemindRes = newSocial.getGlobalRemind(
            userData['hostName'] + socialData['getGlobalRemind_url'],
            headers=webAPIData['headers'])
        # 断言返回200,code=0,获取全局提醒列表成功
        self.assertEqual(getGlobalRemindRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(json.loads(getGlobalRemindRes.text)['code'], 0)

        # 9、获取财经要闻
        getFinanceListRes = newSocial.getFinanceList(
            userData['hostName'] + socialData['getFinanceList_url'],
            headers=webAPIData['headers'])
        # 断言返回200,code=0,获取财经要闻成功
        self.assertEqual(getFinanceListRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(json.loads(getFinanceListRes.text)['code'], 0)

        # 10、获取财经要闻页的热门推荐
        getHotRecommendListRes = newSocial.getHotRecommendList(
            userData['hostName'] + socialData['getHotRecommendList_url'],
            headers=webAPIData['headers'])
        # 断言返回200,code=0,获取财经要闻页的热门推荐成功
        self.assertEqual(getHotRecommendListRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(json.loads(getHotRecommendListRes.text)['code'], 0)

        # def test_addShortBlog003(self):
        '''发带品种标签的短微博'''
        blogParams = {
            "isLongBlog": False,  # boolean  true表示长微博,false表示短微博
            "body": "$AUD/JPY$ test1",  # 短微博内容
            "blogType": 0,  # 微博类型:0:普通微博;1:公告;2:品种资讯;3:交易动态
            "symbol": "",
            "postType":
            0  # 发布类型: 0-用户微博,1-推广,2-认证用户微博,3-名人大咖,4-分析师,5-媒体号,6-经纪商
        }
        addShortBlogRes = newSocial.addBlog(userData['hostName'] +
                                            socialData['addBlog_url'],
                                            headers=webAPIData['headers'],
                                            datas=blogParams)
        # 断言返回200,发微博成功,code=0发微博成功
        self.assertEqual(addShortBlogRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(json.loads(addShortBlogRes.text)['code'], 0)
        # 获取微博id,用于删除微博
        blogId = json.loads(addShortBlogRes.text)['data']['ObjectId']

        #5、获取微博详情
        # id = blogId
        getBlogDetailRes = newSocial.getBlogDetail(
            userData['hostName'] + socialData['getBlogDetail_url'] +
            str(blogId) + '/detail',
            headers=webAPIData['headers'])
        #断言返回200,code=0,获取微博详情成功
        self.assertEqual(getBlogDetailRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(json.loads(getBlogDetailRes.text)['code'], 0)

        # BlogDetailId = json.loads(getBlogDetailRes.text)['data']['BlogInfo']['Id']
        # # BlogDetailId = []
        # # for i in BlogDetail:
        # #     BlogDetailId.append(i['Id'])
        # self.assertIn(blogId, BlogDetailId)

        # #11、分享微博
        # blogShareRes=newSocial.blogShare(userData['hostName']+socialData['blogShare_url']+str(blogId),headers = webAPIData['headers'])
        # #断言返回200,code=0,分享成功
        # self.assertEqual(blogShareRes.status_code,userData['status_code_200'])
        # self.assertEqual(json.loads(blogShareRes.text)['code'],0)

        # 获取品种资讯列表
        # userData['type']博客类型:0-普通微博,1-公告,2-品种资讯,3-交易动态
        time.sleep(2)
        symbolBlogRes = newSocial.getBlogByType(
            userData['hostName'] + socialData['getBlogByType_url'] +
            str(userData['type']),
            headers=webAPIData['headers'])

        # 断言返回200,code=0,获取品种列表成功
        self.assertEqual(symbolBlogRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(json.loads(symbolBlogRes.text)['code'], 0)
        # 获取品种资讯列表所有微博,断言,刚发布的品种微博存在于品种资讯列表中
        listBlog = json.loads(symbolBlogRes.text)['data']['Items']
        listBlogId = []
        for i in listBlog:
            listBlogId.append(i['Id'])
        self.assertIn(blogId, listBlogId)

        # 删除微博
        delBlogRes = newSocial.delBlogById(
            userData['hostName'] + socialData['delBlogById_url'] + str(blogId),
            headers=webAPIData['headers'])
        self.assertEqual(delBlogRes.status_code, userData['status_code_200'])
        self.assertEqual(json.loads(delBlogRes.text)['code'], 0)
예제 #10
0
    def test_addAndCancelPraise(self):
        '''登录账号A,发布微博-》登录账号B,点赞该微博,获取该微博对应的赞-》账号A查看收到的赞列表-》取消点赞,删除微博,退出账号'''

        #发布微博
        blogParams = {
            "isLongBlog": False,  #boolean  true表示长微博,false表示短微博
            "body": "test short blog test",  #短微博内容
            "blogType": 0,  #微博类型:0:普通微博;1:公告;2:品种资讯;3:交易动态
            "symbol": "",
            "postType": 0  #发布类型: 0-用户微博,1-推广,2-认证用户微博,3-名人大咖,4-分析师,5-媒体号,6-经纪商
        }
        shortBlogRes = newSocial.addBlog(userData['hostName'] +
                                         socialData['addBlog_url'],
                                         headers=self.headers,
                                         datas=blogParams)
        #断言返回200,发布微博成功
        self.assertEqual(shortBlogRes.status_code, userData['status_code_200'],
                         "微博发布失败")
        self.assertEqual(
            json.loads(shortBlogRes.text)['code'], userData['code_0'])
        #获取微博id,用于删除微博
        blogId = json.loads(shortBlogRes.text)['data']['ObjectId']

        #点赞微博
        praiseBlogParams = {
            'toUserId': self.userId,  #用户id
            'objId': blogId,  #微博id
            'type': 1  #type=1微博 2评论
        }
        praiseBlogRes = newSocial.addOrCancelPraise(
            userData['hostName'] + socialData['addOrCancelPraise_url'],
            datas=praiseBlogParams,
            headers=self.followHeaders)
        #断言返回200,code=0,点赞成功
        self.assertEqual(praiseBlogRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(
            json.loads(praiseBlogRes.text)['code'], userData['code_0'])

        #获取该微博对应的赞
        blogPraiseListParams = {'type': 1}  #type=1 微博
        blogPraiseListRes = newSocial.getPraiseList(
            userData['hostName'] + socialData['getPraiseList_url'] +
            str(blogId),
            params=blogPraiseListParams,
            headers=self.followHeaders)
        #断言返回200,code=0,点赞成功
        self.assertEqual(blogPraiseListRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(
            json.loads(blogPraiseListRes.text)['code'], userData['code_0'])
        #断言,该微博的赞的数量为1
        self.assertEqual(
            int(json.loads(blogPraiseListRes.text)['data']['TotalCount']), 1)

        #账号A检查收到的赞列表
        getMyReceiveRes = newSocial.getMyReceive(
            userData['hostName'] + socialData['getMyReceive_url'],
            headers=self.headers)
        #断言返回200,code=0,点赞成功
        self.assertEqual(getMyReceiveRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(
            json.loads(getMyReceiveRes.text)['code'], userData['code_0'])
        #断言,收到的赞列表第一条微博为该微博
        blogIdList = json.loads(
            getMyReceiveRes.text)['data']['Items'][0]['BlogInfo']['Id']
        self.assertEqual(blogIdList, blogId, "新收到的赞,没有显示在第一位")

        #取消点赞
        cancelPraiseBlogRes = newSocial.addOrCancelPraise(
            userData['hostName'] + socialData['addOrCancelPraise_url'],
            datas=praiseBlogParams,
            headers=self.followHeaders)
        #断言返回200,code=0,点赞成功
        self.assertEqual(cancelPraiseBlogRes.status_code,
                         userData['status_code_200'])
        self.assertEqual(
            json.loads(cancelPraiseBlogRes.text)['code'], userData['code_0'])

        #删除微博
        delBlogRes = newSocial.delBlogById(
            userData['hostName'] + socialData['delBlogById_url'] + str(blogId),
            headers=self.headers)
        self.assertEqual(delBlogRes.status_code, userData['status_code_200'])
        self.assertEqual(json.loads(delBlogRes.text)['code'], 0)
예제 #11
0
    def test_addLongBlog005(self):
        '''发布长微博:纯文字'''
        #先上传图片
        # m={'pic': ('image.gif', open("../../file/image.gif", 'rb'), 'image/gif')}    #这样上传文件post中用files,但是文件太大,选择用数据流传送MultipartEncoder
        # m = MultipartEncoder(fields = { "pic": ("image.jpg", open("../../file/image.jpg", "rb"), "image/jpeg")})
        # print("m",m)
        # print("m.content")
        # self.headers['Content-Type'] = m.content_type
        # print("self.headers",self.headers)
        # # self.headers=dict(userData['headers'],**{userData['Authorization'] : userData['Bearer']+self.token})
        # print("self.headers",self.headers)
        # #上传图片
        # imageRes=requests.post(userData['hostName']+socialData['singleFileUpload_url'],data = m,headers = self.headers)
        # print(userData['hostName']+socialData['singleFileUpload_url'])
        # # headers = dict(('content-type' : m.content),**{userData['Authorization'] : userData['Bearer']+self.token})
        # print("headers",self.headers)
        # print("imageRes",imageRes.text)
        # #断言返回200,上传图片成功,返回code=0,上传图片成功
        # self.assertEqual(imageRes.status_code,userData['status_code_200'])
        # self.assertEqual(json.loads(imageRes.text)['code'],0)
        # #获取上传图片的url,用于发微博
        # imageUrl=json.loads(imageRes.text)['data']
        # imageUrl['ContentType']='jpg'
        # listImage=[]
        # listImage.append(imageUrl)
        # print("imageUrl",imageUrl)
    
        blogParams={"isLongBlog": True,                     #boolean  true表示长微博,false表示短微博
                    "longBody": "test longBlog test longBlogtest longBlogtest longBlogtest longBlogtest longBlogtest longBlogtest "
                                "longBlogtest longBlogtest longBlogtest longBlogtest longBlogtest longBlogtest longBlogtest longBlogtest longBlogtest longBlogtest"
                                " longBlogtest longBlogtest longBlogtest longBlogtest longBlogtest longBlogtest longBlogtest longBlogtest longBlogtest longBlogtest "
                                "longBlogtest longBlogtest longBlogtest longBlogtest longBlogtest longBlogtest longBlogtest longBlogtest longBlogtest longBlogtest "
                                "longBlogtest longBlogtest longBlogtest longBlogtest longBlogtest longBlogtest longBlogtest longBlogtest longBlogtest longBlogtest "
                                "longBlogtest longBlog",     #长微博内容
                    "longTitle": "longBlog",          #长微博标题
                    "longIntro": "longBlog",          #长微博导语
                    "blogType": 0,                          #微博类型:0:普通微博;1:公告;2:品种资讯;3:交易动态
                    #"files": listImage,
                    "symbol": "",
                    "postType": 0                           #发布类型: 0-用户微博,1-推广,2-认证用户微博,3-名人大咖,4-分析师,5-媒体号,6-经纪商
                   }

        self.headers['Content-Type'] = "application/json; charset=utf-8"
        longBlogRes=newSocial.addBlog(userData['hostName']+socialData['addBlog_url'],datas = blogParams, headers = self.headers)
        #断言返回200,code=0,发布微博成功
        self.assertEqual(longBlogRes.status_code,userData['status_code_200'])
        self.assertEqual(json.loads(longBlogRes.text)['code'],0)
        #获取微博id,用于删除微博
        longBlogId=json.loads(longBlogRes.text)['data']['ObjectId']
    
        #检查我的微博列表
        time.sleep(2)
        # params={"pageIndex":1,"pageSize":15}  #有默认值可以不用传参
        getMyBlogsRes=newSocial.getMyBlogs(userData['hostName']+socialData['getMyBlogs_url'],headers = self.headers)
        print(userData['hostName']+socialData['getMyBlogs_url'])
        #断言返回200,code=0,获取我的微博列表成功
        self.assertEqual(getMyBlogsRes.status_code,userData['status_code_200'])
        self.assertEqual(json.loads(getMyBlogsRes.text)['code'],0)
    
        #断言,我的微博列表第一条微博为刚发布的微博
        blogId=json.loads(getMyBlogsRes.text)['data']['Items'][0]['Id']
        self.assertEqual(longBlogId,blogId)
    
        #删除微博
        delBlogRes=newSocial.delBlogById(userData['hostName']+socialData['delBlogById_url']+str(longBlogId),headers = self.headers)
        self.assertEqual(delBlogRes.status_code,userData['status_code_200'])
        self.assertEqual(json.loads(delBlogRes.text)['code'],0)