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에 따라 라이센스가 부여됩니다.