Ejemplo n.º 1
0
class LaGou(unittest.TestCase):
	def setUp(self):
		self.obj=Method()
		self.p=IsContent()
		self.excel=OperationExcel()
		self.json=OperationJson()

	def statusCode(self,r):
		self.assertEqual(r.status_code,200)
		self.assertEqual(r.json()['code'],0)

	def isContent(self,r,row):
		self.statusCode(r)  # 注意要给statusCode传数据
		self.assertTrue(self.p.isContent(row=row,str2=r.text))

	def test_laGou_001(self):
		'''拉勾:测试翻页,第一页'''
		r=self.obj.post(row=1,data=self.json.getRequestData(row=1))   #obj这种写法的原理是什么,见setup方法
		print(r.text)
		self.isContent(r=r,row=1)  #为什么不是写成self.p.isContent(r=r,row=1)???
		self.excel.writeResult(1,'pass')



	def test_laGou_002(self,row=2):
		'''拉勾:测试翻页,第二页'''
		r=self.obj.post(2)   #obj这种写法的原理是什么,见setup方法
		self.isContent(r=r,row=row)
		self.excel.writeResult(2,'pass') #如果上面的断言失败了,pass就不会被写进文件中了


	def test_laGou_003(self, row=3):
		'''拉勾:测试翻页,传入不同类型的搜索关键字,替换json中的数据进行测试'''
		r = self.obj.post(row=3,data=setSo('性能测试工程师'))
		print(r.text)
		list1=[]
		for i in range(0,15):  # 0< <16
			positionId=r.json()['content']['positionResult']['result'][i]['positionId']
			list1.append(positionId)
		writePositionId(json.dumps(list1))
		print(list1)
		# self.isContent(r=r, row=row)


	def test_laGou_004(self, row=4):
		'''拉勾:访问搜索‘性能测试工程师’查看每个职位的详情信息'''
		for item in getPositionId():
			r=self.obj.get(url=getUrl(positionId=item))
			# print(r.url)
			print(r.text)  #因为返回的详情页面是html的,所以没有响应状态码,只需要断言数据就行
			self.assertTrue(self.p.isContent(row=4,str2=r.text))  #要么写成(row=4,str2=r.text),要么写成(4,r.text),否则报错
Ejemplo n.º 2
0
class Method:
    def __init__(self):
        self.operationJson = OperationJson()
        self.excel = OperationExcel()

    def post(self, row):
        try:
            r = requests.post(url=self.excel.get_url(row=row),
                              data=self.operationJson.getRequestData(row=row),
                              headers=getHeadersValue(),
                              timeout=6)
            return r
        except Exception as e:
            raise RuntimeError('接口请求发生未知错误')

    def post(self, row, data):
        try:
            r = requests.post(url=self.excel.get_url(row=row),
                              data=data,
                              headers=getHeadersValue(),
                              timeout=6)
            return r
        except Exception as e:
            raise RuntimeError('接口请求发生未知错误')