BIGtheme.net http://bigtheme.net/ecommerce/opencart OpenCart Templates
20/11/2017 - 7:11 PM

Automação de testes Mobile com Kobiton (Appium)

Sim Kobiton, é uma nova plataforma free para testes em dispositivos reais, sim está em fase beta e é free, se irá continuar free? Essa resposta não sabemos.

Bom, além do Kobiton ser de graça ele também possibilita através de uma API que você utilize o Appium deles, assim através da API você envia os comandos e o Appium executa. Esta abordagem é feita por grandes empresas que disponibilizam devices reais para testes, porém a maioria é paga e o Kobiton não. Você precisa, nas suas definições da capabilities apontar para a URL do server do Kobiton para instanciar o novo DRIVER, você pode ver no exemplo abaixo:

private static void initializeAndroid() {

        try {
            String kobitonServerUrl = "http://quatest.test:TOKEN@api.kobiton.com/wd/hub";

            DesiredCapabilities capabilities = new DesiredCapabilities();
            capabilities.setCapability("sessionName", "Automation testing session");
            capabilities.setCapability("sessionDescription", "Automation testing session");
            capabilities.setCapability("deviceOrientation", "portrait");
            capabilities.setCapability("captureScreenshots", true);
// The maximum size of application is 200MB
            capabilities.setCapability("app", "http://enderecoDoApp");
            capabilities.setCapability("deviceGroup", "KOBITON");
            capabilities.setCapability("deviceName", "Moto G (3rd Gen)");
            capabilities.setCapability("platformVersion", "6.0");
            capabilities.setCapability("platformName", "Android");


            instance = new AndroidDriver(new URL(kobitonServerUrl), capabilities);
            instance.manage().timeouts().implicitlyWait(60, TimeUnit.SECONDS);
            PageFactory.initElements(new AppiumFieldDecorator(instance), new LocatorsBase());

        } catch (IOException e) {
            throw new RuntimeException(e);
        }
    }

A String kobitonServerUrl, é o endereço que o próprio kobiton disponibiliza para utilizar seu server.

 

Acessando Kobiton e extraindo as capabilities

  • 1. Acessar 
  • 2. Cadastrar 
  • 3. Pegar Informações
Join the Beta |

Acessar
Clicar em Join the Beta
Clicar em Join the Beta
Preencher Campos |
Pegar as informações |

Pronto agora é so passar o mouse por cima de um device que você verá alguns botões, clicar no botão de engrenagem:

Na tela a seguir, você define algumas propriedades do projeto e no final você deverá pegar a capabilities disponibilizada:

Após extrair as capabilities necessários você deve instanciar o seu DRIVER para ai sim, criar seus testes, veja o exemplo deste código que utiliza as capabilities que o Kobiton forneceu e instancia um novo AndroiDriver!

 

public class DriverFactory {
    private static AppiumDriver instance;

    private static void initializeAndroid() {

        try {
            String kobitonServerUrl = "http://quatest:TOKEM@api.kobiton.com/wd/hub";

            DesiredCapabilities capabilities = new DesiredCapabilities();
            capabilities.setCapability("sessionName", "Automation testing session");
            capabilities.setCapability("sessionDescription", "Automation testing session");
            capabilities.setCapability("deviceOrientation", "portrait");
            capabilities.setCapability("captureScreenshots", true);
// The maximum size of application is 200MB
            capabilities.setCapability("app", "<APP_URL>");
            capabilities.setCapability("deviceGroup", "KOBITON");
            capabilities.setCapability("deviceName", "Moto G (3rd Gen)");
            capabilities.setCapability("platformVersion", "6.0");
            capabilities.setCapability("platformName", "Android");


            instance = new AndroidDriver(new URL(kobitonServerUrl), capabilities);
            instance.manage().timeouts().implicitlyWait(60, TimeUnit.SECONDS);

        } catch (IOException e) {
            throw new RuntimeException(e);
        }
    }

    public static AppiumDriver getInstance()  {
        try {
            if (instance == null) {
                initializeAndroid();
            }
            return instance;
        }catch (IOException e){
            throw new RuntimeException(e);

        }
    }
}

Com isto seus testes utilizando o DRIVER já estão enviando os comandos para Kobiton!

No próximo vamos escrever nosso primeiro teste!

 

 

 

Sobre Luiz Lohn

Luiz Lohn
Mobile QA Engineer, trabalha há mais de 4 anos com qualidade e teste de software. Atualmente na SocialBase trabalha com automação e testes manuais de Aplicativos Móveis. Fundador do site QUATEST e coordenador do GUTS-SC

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *