O documento discute o desafio de testar integrações com serviços externos através de um proxy, e apresenta uma solução utilizando um servidor HTTP minimalista implementado com AnyEvent para simular respostas de um proxy durante testes.
Contexto
• Migração deLWP 5.x para LWP 6.x em todo o
sistema
• A partir do LWP 6, vários módulos não mais fazem
parte da distribuição libwww-perl!
• LWP::Protocol::https
• LWP::Protocol::connect
3.
Contexto
• Firewall comwhitelist
• Conexões externas somente através do proxy
Squid
• SSL/TLS, pois os requests contém dados pessoais
4.
Desafio
• Message Servicefaz request HTTP
• request handler acessa os dados
• LWP cria request HTTP(S) para servidor externdo
• Proxy Squid
• API externa
5.
Desafio
• Código legado
•Sem teste para a integração com o serviço externo
• Importante demais para testar em produção
• Sistema distribuído, mas impossível de fazer
deploy gradual