LAST TIME

回归测试的最后努力

#coding=utf-8
import requests  
import json  
import unittest 
import random
import time

def fmat(k):
    seq = ''.join([str(i) for i in random.sample(range(0,9),k)])
    return  seq

class MyTest(unittest.TestCase):  
    def setUp(self):                   
        print "start test"
         
    def tearDown(self):               
        print "end test"
          
class TestFat(MyTest):
    @staticmethod
    def test_3010():
        url = "http://10.22.60.9:28002/3010"
        headers = {'rpc_version':'1.0','rpc_group':'800','Content-Type':'application/json'}
        #seq = ''.join([str(i) for i in random.sample(range(0,9),9)])
        #now = time.strftime("%Y%m%d%H%M%S")
        seq = '20180529000'+ fmat(9)
        req = {"comm_req":{"busi_seq":seq,"busi_org_id": "2086","trxn_seq":seq,"caller_system": "000","channel_id": "107","initiator_date": "20180621","busi_branch_id": "3480","over_time": "10000","trans_time": "054653","initiator_system": "800","busi_teller_id": "99S10201","sponsor_system": "114","trans_date": "20180523"}}
        diy = {"input":{
            "list03":[
                {
                    "main_info_ind":"Y",
                    "contact_method":"10",
                    "contact_content":"631"+fmat(9),
                    "country":"VN"
                },
                {
                    "main_info_ind":"N",
                    "contact_method":"40",
                    "contact_content":"[email protected]",
                    "country":"VN"
                }
            ],
            "list02":[{
                "main_info_ind":"Y",
                "address1":"gzszns",
                "address_type":"A10",
                "country":"VN"
            }],
            "birth_country":"VN",
            "list05":[],
            "list04":[],
            "birth_date":"19991215",
            "list07":[],
            "list06":[{
                "declare_ind":"Y",
                "country_code":"VN"
            }],
            "list08":[],
            "cust_name":"ryana",
            "nationality":"VN",
            "resident_country":"VN",
            "residence_status":"Y",
            "gender":"F",
            "cust_service_level":"B",
            "cust_status":"1",
            "list01":[{
                "doc_no":fmat(6),
                "doc_status":"1",
                "main_info_ind":"Y",
                "doc_type":"10",
                "doc_effe_date":"20170101"
            }],
            "staff_ind":"N",
            "combine_stmt_ind":"Y"
        },
        "sys":{
            "prcscd":"3010"
        }}
        req.update(diy)
        r = requests.post(url = url,json = req,headers = headers)
        print req
        print seq
        print r.status_code
        #print 'aa',type(r.text),type(r.content)  #aa <type 'unicode'> <type 'str'>
        #assertIn(u'"status":"S"',r.text)
        d = json.loads(r.content)
        #global custNo
        custNo = d['output']['cust_no']
        print custNo
        return custNo
    
    @staticmethod
    def test_4000_lite(custNo):
        url = "http://10.22.60.9:28002/4000"
        headers = {'rpc_version':'1.0','rpc_group':'800','Content-Type':'application/json'}
        seq = '20180529000'+ fmat(9)
        req = {"comm_req":{"busi_seq": seq,"busi_org_id": "2086","trxn_seq": seq,"caller_system": "000","channel_id": "107","initiator_date": "20180621","busi_branch_id": "3480","over_time": "10000","trans_time": "054653","initiator_system": "800","busi_teller_id": "99S10201","sponsor_system": "114","trans_date": "20180523"}}
        diy = {
        "input": {
            "new_open_acct_ind": "Y",
            "prod_id": "FA01",
            "zero_amt_open_acct_ind": "Y",
            "self_opt_number_ind": "0",
            "cust_no": custNo,
            "ccy_code": "PHP",
            "acct_valid_date": "20240630",
            "acct_type": "D02",
            "acct_no": "",
            "acct_withdrawal_cond": "P",
            "card_no": "",
            "joint_acct_ind": "N",
            "agent_ind": "N",
            "cash_exch_price_ind": "E"
        },
        "sys": {
            "prcscd": "4000"
        }}
        req.update(diy)
        r = requests.post(url = url,json = req,headers = headers)
        print req
        print r.text
        print r.status_code
        #assertIn(u'"status":"S"',r.text)
        cnt = r.content
        cnt = cnt.replace('null','None')
        d = json.loads(cnt)
        lite_acctNo = d['output']['acct_no']
        print lite_acctNo
        return lite_acctNo
       
    @staticmethod
    def test_5900(custNo,lite_acctNo):
        url = "http://10.22.60.9:28002/5900"
        headers = {'rpc_version':'1.0','rpc_group':'800','Content-Type':'application/json'}
        seq = '20180529000'+ fmat(9)
        req = {"comm_req":{"busi_seq": seq,"busi_org_id": "2086","trxn_seq": seq,"caller_system": "000","channel_id": "107","initiator_date": "20180621","busi_branch_id": "3480","over_time": "10000","trans_time": "054653","initiator_system": "800","busi_teller_id": "99S10201","sponsor_system": "114","trans_date": "20180523"}}    
        diy = {
        "input": {
            "cust_no":custNo,
            "ccy_code":"PHP",
            "self_opt_number_ind":"0",
            "prod_id":"lite",
            "layout_id":"1",
            "level_id":"lite",
            "customize_ind":"N",
            "cust_shortname":"Miki",
            "plan_emboss_card_date":"",
            "acct_no":lite_acctNo,
            "address":"test"
        }, 
        "sys": {
            "country": "en_US",
            "prcscd": "5900"
        }}
        req.update(diy)
        r = requests.post(url = url,json = req,headers = headers)
        print req
        print r.text
        print r.status_code
        #assertIn(u'"status":"S"',r.text)
        d = json.loads(r.content)
        cardNo = r.text['output']['card_no']
        return cardNo
        
if __name__=="__main__":
    #global custNo
    #unittest.main()
    custNo = TestFat.test_3010()
    print 'hi',custNo
    lite_acctNo = TestFat.test_4000_lite(custNo)
    print 'hey',lite_acctNo
    cardNo = TestFat.test_5900(custNo,lite_acctNo)
    print 'hello',cardNo

猜你喜欢

转载自www.cnblogs.com/Ryana/p/9118328.html