Pular para o conteúdo principal

Browsers para todos os gostos e um aperitivo de Selenium nas nuvens

Em 1989, foi derrubado o muro de Berlim. O ensaista Francis Fukuyama decretou o "fim da história": o capitalismo norteamericano havia vencido a guerra fria com seu sistema rival, o antes temido comunismo soviético. De fato, o sistema capitalista se tornou dominante, com a exceção de um par de cenários de reality show onde moram alguns milhões de pessoas: o Pedro Bial de um deles usa um topete midiático e o outro, que não raspa a barba há meio século, virou garoto propaganda da Adidas.

Na geopolítica, de lá pra cá, a hegemonia norteamericana sofreu abalos: vivemos em um novo mundo multipolar, onde outros atores passaram a crescer em relevância, principalmente os BRICs.

Em 2002/2003, a primeira guerra dos browsers também chegou ao fim. Com mais de 95% de participação, o Internet Explorer se tornou o único browser relevante. Os webdesigners colocavam avisos dizendo que, se você não atualizasse seu browser para IE 6, você não teria o privilégio de visitar aquele site.

Assim, para quê se preocupar com os padrões do W3C ou da ECMA ? Se não funcionava para os desajustados, eles que se ajustassem. Naquela época, acessar a web a partir do celular era uma raridade, e apenas os nerds mais radicais insistiam em usar um desktop Linux: assim como os grupúsculos de ultraesquerda que só existem em diretórios de estudantes de universidades públicas, eles se dividiam entre os partidários de cada distribuição. Para o dono da confecção que queria divulgar suas promoções na internet, ou simplesmente falar orgulhosamente para os clientes "agora temos um saitenauebe !", o fato de alguém não poder acessar a página inicial dele usando o Konqueror era irrelevante.

Hoje, a situação é bem diferente. O acesso à web por celulares e PDAs, dos quais apenas uma minoria consegue rodar IE, é corriqueiro. Computadores de mesa, laptops e netbooks comprados nas Casas Bahia já vêm com Ubuntu instalado, e Macs não são mais exclusivos de designers estilosos. Em novos dispositivos como mini-tablets (Kindle, iPad = iPhone de Itu), ainda não se sabe se haverá uma plataforma dominante. O ChromeOS também deve mexer nesse mix.

Nas estatísticas, a participação do IE já se reduziu aproximadamente à metade dos dispositivos que acessam a web, e a metade restante está bastante pulverizada. Hoje, o dono da confecção que passou a depender mais da web e não reformulou seu site IE-only desde 2002, pode estar deixando de fora metade dos seus clientes.

Quem já leu algum outro post deste blog, deve ter percebido que sou viciado em teste de software: como fazer para testar seu site com um número crescente de browsers ? Comprar diversos tipos de hardware, instalar sistemas operacionais diversos e contratar um exército de testadores manuais não parece ser uma estratégia viável para o dono da confecção.

É ai que começamos a pensar no assunto da moda: cloud. Seria possível montar uma infraestrutura com máquinas virtuais, cada uma executando um sistema operacional e um browser diferente, e poder controlá-los remotamente, executando um mesmo roteiro de testes ?

Felizmente, isso é possível. A família de ferramentas Selenium permite montar tal infraestrutura através do Selenium Grid. No site tem um passo-a-passo de como montar um conjunto de nós escravos de Selenium Grid no serviço EC2 da Amazon (http://selenium-grid.seleniumhq.org/setting_up_selenium_grid_on_ec2.html)

Outra possibilidade, talvez menos nerd, é contratar alguém que já fez isso e que oferece o teste como serviço (TaaS ?), a partir dos seus próprios scripts para Selenium, numa nuvem pública. Você paga o que o taxímetro indicar, e recebe os relatórios no conforto do seu browser. Este serviço é oferecido pela BrowserMob (http://browsermob.com). De quebra, você pode fazer testes de carga com um número grande de browsers reais, reutilizando toda a lógica dos seus testes funcionais, em vez de precisar escrever testes específicos para ferramentas como JMeter.

Se, por algum motivo, você não deseja confiar sua preciosa lógica de teste (o que provavelmente não é o caso do dono da confecção) aos cuidados de terceiros, daria para montar uma nuvem interna usando, por exemplo, o Eucalyptus nos computadores que normalmente ficariam ociosos durante a noite.

Pretendo explorar esta possibilidade nas próximas semanas e postar os resultados do experimento.
Aguardem.

Jorge Diz
http://twitter.com/jorgediz

Comentários

Dr. Spock disse…
Oi Jorge,

Acho que o tico e teco aqui não captaram os binds. Qual o bind entre guerra fria, BBB, esquerda, radicalismo, etc com os browsers, testes e selenium? Eles conseguiram captar sobre a necessidade de testes automatizados com a crescente adoção de vários browsers e meios diferentes de conexão (konqueror, safari, firefox, chrome, opera, iphone, ipod, pc, mac, smartphones, netbooks, ipad, etc). Nesse ponto tudo bem! Começou com história/filosofia e parou no técnico ... aí pifou o teco ... e o tico ficou confuso :)
Jorge Diz disse…
Explicando:

Guerra fria ~ Guerra dos browsers

Capitalismo ~ IE : vitória esmagadora

Relíquias comunistas ~ Usuários de outros browsers

BRICs ~ FOCS (Firefox, Opera, Chrome, Safari)

A geopolítica mudou desde o fim da guerra fria ~ O cenário da web mudou desde o fim da guerra dos browsers.

Ai talvez faltou continuar com a metáfora ...
mas a ideia era tentar mostrar que o mundo mudou e que vc espanta metade dos seus clientes se continuar com a ideia de que o IE marcou o "fim da história"

Acho que dei um cavalo de pau quando comecei a falar de testes, uma vez montado o cenário...

Obrigado pelo feedback :)

Jorge
Anônimo disse…
Pois sua "metafora" ficou excelente! So nao havia entendido o lance do BRICs, que esclareceu aqui. Parabens! - Daniel

Postagens mais visitadas deste blog

O que é Lógica de programação?

Este é o segundo de uma série de posts voltados aos leitores do blog que estão dando início à carreira de desenvolvimento de software. O assunto de hoje é a lógica de programação. Para ler antes: Entendendo como funciona a programação de computadores: linguagens de programação, lógica, banco de dados A lógica de programação é um pré-requisito para quem quer se tornar um desenvolvedor de software, independente da linguagem de programação que se pretende utilizar. Mas o que é de fato a Lógica de Programação e como saber se eu tenho esse pré-requisito? A lógica de programação nada mais é do que a organização coerente das instruções do programa para que seu objetivo seja alcançado. Para criar essa organização, instruções simples do programa, como mudar o valor de uma variável ou desenhar uma imagem na tela do computador, são interconectadas a estruturas lógicas que guiam o fluxo da execução do programa. Isso é muito próximo ao que usamos em nosso cotidiano para realizar atividad...

TDC ONLINE: SUA PLATAFORMA DE PALESTRAS GRAVADAS DO TDC DISPONÍVEL

Além do conteúdo ao vivo transmitido online nas edições do TDC, agora você pode ter acesso à centenas de palestras gravadas, através da nossa nova plataforma de vídeos - o TDC Online, que reúne todas as Trilhas premium, Stadium e Salas dos Patrocinadores das edições anteriores de 2022, TDC Innovation e TDC Connections.  Para acessar, basta clicar na edição em que você participou ( TDC Innovation ou TDC Connections ); Fazer o mesmo login (com e-mail e senha) cadastrados na hora de adquirir ou resgatar o seu ingresso no TDC; E clicar na Trilha de sua opção, e de acordo com a modalidade do seu ingresso. Logo em seguida, você será direcionado para a seguinte página com a lista de todas as palestras por Trilha: Pronto! Agora você tem acesso à centenas de palestras gravadas da sua área de interesse, para assistir como e quando quiser! Caso tenha esquecido a senha, clique na opção "Esqueci a senha" , insira o e-mail que você realizou para o cadastro no evento, e aparecerá a op...

TDC BUSINESS, chega a São Paulo com novas trilhas de Inteligência Artificial e Inovação

Maior conferência de profissionais de tecnologia do Brasil abordará temas em alta no momento como, por exemplo, Inteligência Artificial, Segurança, Ciência de Dados e Inovação O TDC BUSINESS, a 17° edição do The Developer's Conference na cidade de São Paulo, que acontece entre os dias 19 e 21 de Setembro, reunirá profissionais e especialistas da área para troca de experiência, compartilhamento de conteúdos e networking. Com o tema central: “Tecnologia para negócios transformadores”, o evento será totalmente híbrido, ocorrendo presencialmente no espaço Pro Magno, e com transmissão simultânea e atividades de network pela internet. A expectativa é reunir mais de 14.000 pessoas, somando a participação presencial e online.   Segundo Yara Mascarenhas, Fundadora e Host do Evento, “nosso objetivo com o TDC é inspirar a colaboração entre os profissionais e empresas para construir uma nova realidade para o mercado de TI.  Vamos juntar tecnologia e negócios com as trilhas técnicas...

12 ESQUENTAS TDC ESPERANDO POR VOCÊ

O TDC nasceu do sonho de profissionais que valorizam o compartilhamento de conhecimento, experiências e oportunidades entre as comunidades de desenvolvedores.  Por isso, o crescimento do TDC nunca poderia ficar longe do crescimento das comunidades! Pensando nessa união, criamos um projeto quente: O ESQUENTA TDC ! Visando divulgar os meetups de comunidades que querem transformar e inspirar carreiras, foi co-criado este projeto lindo e cheio de apoio, onde o TDC abraça meetups de diversas comunidades espalhadas pelo Brasil e elas contribuem com a divulgação da edição regente.  O TDC Innovation vai rolar de 14 a 16 de JUNHO, mas até lá vão acontecer muitos encontros incríveis!  Fique por dentro das comunidades que vão participar, quais temas irão abordar e claro as datas e locais para você participar. 💥Esquentas TDC Innovation 2023: 24/05 - Esquenta TDC: Carreira e Desenvolvimento Presencial em Floripa das 19:00 as 21:30 com inscrição AQUI Comunidade: Google Developer...

Vamos falar de Android...

Nessa minha primeira aparição aqui no blog da Globalcode, vou falar de um assunto que vem sendo tópico frequente nos Twitters da equipe da GC e também de alguns amigos, o Google Android. Um pouco de história... Como já faz parte da estratégia conhecida do Google, em 2005 comprou uma start-up chamada Android e que estava trabalhando em uma distribuição de Linux (baseado no kernel 2.6) voltada para smartphones com o mesmo nome da empresa. Após essa compra muito se especulou e em 2007 os rumores foram confirmados com o anúncio do Google sobre a criação da Open Handset Alliance e os esforços para a solidificação da plataforma Android . A partir disso, muito se falou e muitos desenvolvedores (eu inclusive) não acreditavam que o Google teria força para entrar na briga com as fabricantes e operadoras. Mas então, a Nokia anunciou a compra de toda a Symbian Foundation, que controlava o desenvolvimento da plataforma Symbian, base de seus Smartphones da S60 (como por exemplo o N95, 5800, N9...

Uma forma de usar Twitter4J com OAuth

Já faz bastante tempo que escrevi um post sobre como enviar tweets através de uma aplicação Java usando a biblioteca Twitter4J e de lá para cá tivemos algumas atualizações e uma delas foi o fato de não ser mais possível usar autenticação básica como eu coloquei de exemplo. Hoje eu vi a Yara citar no Twitter este meu post como exemplo de uso e responderam a ela que não funcionava mais assim, então resolvi pesquisar e colocar aqui no blog a solução que encontrei. Buscando na internet, encontrei rapidamente este artigo em inglês no blog da EMC, e como está bem explicado, peço licença ao autor Nileesha Bojjawar para colocar aqui traduzido para o português e compartilhar com vocês. Neste texto, além de mostrar como autenticar usando OAuth, também dá a dica de como registrar uma aplicação para editar a timeline de uma conta do Twitter. Vamos ao passo a passo então: "... Crie uma conta no Twitter Crie a conta do Twitter que você quer usar da sua aplicação. No exemplo eu usei uma conta ...