python-인터페이스 자동화 인증 인 스 턴 스
클래스 를 쓰 면 http 가 있 습 니 다.request 함수,http 의 get 및 post 요청,url 과 param 을 이 함수 의 인자 로 완성 할 수 있 습 니 다.
난점:쿠키 가 있 으 면 요청 을 어떻게 완성 하 는 지 고려 해 보 세 요.로그 인 은 충전 과 관련 이 있 기 때 문 입 니 다.
인증:인 스 턴 스 를 만 들 고 로그 인--->충전 요청 을 완료 합 니 다.
로그 인:http://xxx.xxx.xxx.xxx:8080/futureloan/mvc/api/member/login
인자:{"mobilephone":"13500000","pwd":"123456"}
충전:http://xxx.xxx.xxx.xxx:8080/futureloan/mvc/api/member/recharge
인자:{"mobilephone":"13500000","amount":"100"}
#http_request_1
\#첫 번 째 해법:전역 변 수 를 설정 합 니 다:
import requests
COOKIES=None#
# cookie
class HttpRequest:
def http_request(self,url,params,method):
global COOKIES# cookie
if method.upper()=='GET':
res=requests.get(url,params,cookies=COOKIES)
elif method.upper()=='POST':
res=requests.post(url,params,cookies=COOKIES)
print(" cookie",res.cookies)
print(" cookie ",COOKIES)
if res.cookies!={}:#cookies
COOKIES=res.cookies#
print(res.json())
# HTTP , cookies
if __name__ == '__main__':
t=HttpRequest()
login='http://xxx.xxx.xxx.xxx:8080/futureloan/mvc/api/member/login'
login_data={"mobilephone":"13500000000","pwd":"123456"}
re_url='http://xxx.xxx.xxx.xxx:8080/futureloan/mvc/api/member/recharge'
re_data={"mobilephone":"13500000000","amount":"100"}
t.http_request(login,login_data)#
print(" ")
t.http_request(re_url,re_data)#
print(" ")
\#두 번 째 해법:
import requests
from demo.save_value import SaveValue
object=SaveValue()
class HttpRequest:
def http_request(self,url,params):
res=requests.get(url,params,cookies=object.COOKIES)
print(" cookie",res.cookies)
if res.cookies!={}:#cookies ,
setattr(object,'COOKIES',res.cookies)
print(res.json())
if __name__ == '__main__':
t=HttpRequest()
login='http://xxx.xxx.xxx.xxx:8080/futureloan/mvc/api/member/login'
login_data={"mobilephone":"13500000000","pwd":"123456"}
re_url='http://xxx.xxx.xxx.xxx:8080/futureloan/mvc/api/member/recharge'
re_data={"mobilephone":"13500000000","amount":"100"}
t.http_request(login,login_data)#
t.http_request(re_url,re_data)#
#save_value.py
class SaveValue:
COOKIES=None
두 번 째 문제:
1:TXT 에 로그 인 및 충전 요청 인 자 를 넣 습 니 다.데 이 터 는 다음 과 같 습 니 다.
로그 인:http://xxx.xxx.xxx.xxx:8080/futureloan/mvc/api/member/login
인자:{"mobilephone":"13500000","pwd":"123456"}
충전:http://xxx.xxx.xxx.xxx:8080/futureloan/mvc/api/member/recharge
인자:{"mobilephone":"13500000","amount":"100"}
TXT 에 저장 할 형식 은 다음 과 같 습 니 다.
#data_test_1.txt
url:http://xxx.xxx.xxx.xxx:8080/futureloan/mvc/api/member/login,mobilephone:13500000000,pwd:123456,method:get
url:http://xxx.xxx.xxx:8080/futureloan/mvc/api/member/recharge,mobilephone:13500000000,amount:100,method:post
작업 요구:get 이용data.py 의 클래스 GetData 는 txt 에서 데 이 터 를 읽 는 클래스 로 테스트 데 이 터 를 읽 습 니 다.
#get_data.py
class GetData:
def get_data(self,file_path):
file=open(file_path)
all_lines=file.readlines()
# print(all_lines)
list_1=[]
for one_line in all_lines:
split_data=one_line.strip('
').split(',')
dict_1={}
for item in split_data:
item_split=item.split(':',1)
dict_1[item_split[0]]=item_split[1]#
list_1.append(dict_1)
return list_1
py 파일 을 새로 만 들 고 첫 번 째 문 제 를 도입 하여 HTTP 요청 클래스 와 두 번 째 문 제 를 읽 는 데이터 클래스 를 완성 합 니 다.인 스 턴 스 를 만 들 고 로그 인 과 충전 요청 을 완료 합 니 다.
#run.py
from demo.http_request_1 import HttpRequest
from demo.get_data import GetData
t=HttpRequest()
test_data=GetData().get_data('test_data.txt')
print(test_data)
for item in test_data:
print(" ",item)
method=item['method']
item.pop('method')
url=item['url']
item.pop('url')
t.http_request(url,item,method)
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
인터페이스 자동화 테스트, 완전 입문 편위 에서 작 성 된 테스트 사례 디자인 에 따라 python + nostests 프레임 워 크 를 사용 하여 자동화 테스트 스 크 립 트 를 작 성 했 습 니 다.인터페이스 자동화 테스트, 자동 실행 및 메 일 전송...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.