1.TCP接口测试实现
1.Server端
'''
实现基于tcp通信的服务端
'''
import socket
ip_port = ('127.0.0.1',8001)
back_log = 5
buffer_size = 1024
service = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
service.setsockopt(socket.SOL_SOCKET,socket.SO_REUSEADDR,1)
service.bind(ip_port)
service.listen(back_log)
while 1:
con,address = service.accept()
while 1:
try:
msg = con.recv(buffer_size)
print('服务端接收到的请求消息内容是:{}'.format(msg.decode('utf-8')))
if msg.decode('utf-8') == 'cema':
break
except Exception as e:
print(e)
break
service.close()
break
2.客户端
'''
tcp通信下的客户端
tcp接口测试就是通过模拟客户端进行数据的下发,从而来判断接口的业务逻辑是否正常
'''
import socket
service_info = ('127.0.0.1',8001)
client = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
client.connect(service_info)
client.send('cema'.encode('utf-8'))
client.close()
2.Dubbo接口测试实现
1.封装前
'''
基于telnet实现Dubbo接口的测试
'''
import telnetlib
con = telnetlib.Telnet()
con.open('127.0.0.1',20880)
command = 'ls'
command1 = 'invoke com.xxx'
con.write('{}\n'.format(command1).encode())
result = con.read_until('dubbo>'.encode()).decode().split('\r\n')[1]
print(result)
2.封装后
'''
基于Telnet实现Dubbo接口的测试封装
'''
import telnetlib
class Dubbo:
def __init__(self,ip):
self.con = telnetlib.Telnet()
self.con.open(ip,20880)
def execute(self,interface):
self.con.write('invoke {}\n'.format(interface).encode())
result = self.con.read_until('dubbo>'.encode().split('\r\n')[1])
return result
if __name__ == '__main__':
dubbo = Dubbo('127.0.0.1')
result = dubbo.execute('xxx')
print(result)