Escreva uma vez e execute testes no Android em qualquer lugar

No Google I/O deste ano, lançamos o AndroidX Test, que é parte do Jetpack. Hoje, estamos felizes em anunciar o lançamento da versão v1.0.0 Final com a versão 4.0 do Robolectric. Como parte da versão 1.0.0, todo o AndroidX Test agora é de código aberto.
O AndroidX Test fornece APIs de teste comuns em todos os ambientes de teste, incluindo testes do Robolectric e de instrumentação. Ele inclui o suporte existente do Android JUnit 4, a biblioteca de interação da visualização do Espresso e várias novas e importantes APIs de teste. Essas APIs estão disponíveis para testes de instrumentação em dispositivos reais e virtuais. A partir do Robolectric 4.0, elas também estão disponíveis para testes locais da JVM.
Considere o seguinte caso de uso em que iniciamos a tela de login, inserimos um nome de usuário e uma senha válidos e somos direcionados para a tela inicial.
@RunWith(AndroidJUnit4::class)
class LoginActivityTest {
@Test fun successfulLogin() {
// GIVEN
val scenario =
ActivityScenario.launch(LoginActivity::class.java)
// WHEN
onView(withId(R.id.user_name)).perform(typeText(“test_user”))
onView(withId(R.id.password))
.perform(typeText(“correct_password”))
onView(withId(R.id.button)).perform(click())
// THEN
assertThat(getIntents().first())
.hasComponentClass(HomeActivity::class.java)
}
}
Vamos analisar o teste:
- Usamos a nova API ActivityScenario para iniciar o LoginActivity. Isso cria a atividade e a transfere para o estado retomado, onde fica visível para o usuário e pronto para entrada. O ActivityScenario cuida de toda a sincronização com o sistema e fornece suporte para cenários comuns que devem ser testados, como a forma que seu aplicativo lida com a destruição e a recriação feitas pelo sistema.
- Usamos a biblioteca de interação da visualização do Espresso para inserir texto em dois campos e clicar em um botão na IU. Assim como o ActivityScenario, o Espresso lida com a sincronização e vários encadeamentos para você, além de fornecer uma API fluente e legível para testes.
- Usamos a nova API do Espresso, a Intents.getIntents(), que retorna uma lista de intents capturados. Em seguida, verificamos os intents capturados usando IntentSubject.assertThat(), que é uma das novas extensões do Android Truth. A extensão do Android Truth oferece uma API expressiva e legível para validar os estados dos objetos fundamentais da estrutura do Android.
Esse teste pode ser executado em uma JVM local usando o Robolectric ou em qualquer dispositivo físico ou virtual.
Para executá-lo em um dispositivo Android, direcione o teste para a raiz de origem "androidTest" com as seguintes dependências:
androidTestImplementation(“androidx.test:runner:1.1.0”)
androidTestImplementation(“androidx.test.ext:junit:1.0.0”)
androidTestImplementation(“androidx.test.espresso:espresso-intents:3.1.0”)
androidTestImplementation(“androidx.test.espresso:espresso-core:3.1.0”)
androidTestImplementation(“androidx.test.ext:truth:1.0.0”)
A execução em um dispositivo físico ou virtual garante que seu código interaja com o sistema Android corretamente. No entanto, à medida que o número de casos de teste aumenta, você começa a sacrificar o tempo de execução do teste. É possível fazer apenas alguns testes maiores em um dispositivo real e, ao mesmo tempo, executar um grande número de testes unitários menores em um simulador, como o Robolectric, que pode executar testes mais rapidamente em uma JVM local.
Para executar os testes em uma JVM local usando o simulador do Robolectric, direcione o teste para a raiz de origem "teste" adicionando as seguintes linhas ao seu gradle.build:
testImplementation(“androidx.test:runner:1.1.0”)
testImplementation(“androidx.test.ext:junit:1.0.0”)
testImplementation(“androidx.test.espresso:espresso-intents:3.1.0”)
testImplementation(“androidx.test.espresso:espresso-core:3.1.0”)
testImplementation(“androidx.test.ext:truth:1.0.0”)
testImplementation (“org.robolectric:robolectric:4.0”)
android {
testOptions.unitTests.includeAndroidResources = true
}
A unificação do teste de APIs entre simuladores e instrumentação traz muitas possibilidades interessantes. O Project Nitrogen, também anunciado no Google I/O, permitirá deslocar testes entre os ambientes de tempo de execução com facilidade. Isso significa que você poderá realizar testes escritos com base nas novas APIs do AndroidX Test e executá-los em uma JVM local, em um dispositivo real ou virtual, ou até mesmo em uma plataforma de testes baseada na nuvem como o Firebase Test Lab. Estamos muito animados com as oportunidades que isso proporcionará aos desenvolvedores, que poderão receber feedback rápido, preciso e acionável sobre a qualidade dos aplicativos.
Por fim, estamos felizes em anunciar que todos os componentes do AndroidX têm o código totalmente aberto. Estamos ansiosos para receber suas contribuições!
Leia mais
Documentação: https://developer.android.com/testing
Notas da versão:
- AndroidX Test: https://developer.android.com/training/testing/release-notes
- Robolectric: https://github.com/robolectric/robolectric/releases/
Robolectric: https://github.com/robolectric/robolectric
AndroidX Test: https://github.com/android/android-test
5 comentários :
jasapoker yang dilengkapi sistem teknologi terbaru dengan server berkecepatan tinggi yang akan memberikan permainan Judi bola online jasa qq dan sbobet. Caranya sangat mudah, hanya dengan mendaftarkan diri anda di link alternatif juarapoker 2019
sekarang juga dan mulailah mereferensikan link referral anda kepada semua teman dan kenalan anda untuk ikut bermain bersama agen judi online remipoker yang terpercaya ini. Daftarkan diri anda sekarang juga di dominobet 2019 dan ajak teman anda untuk bermain bersama di satu meja!
jangan lupa lagi Akan semakin seru jika Mainbolajalan bisa dimainkan oleh anda semua,permainan yang FAIR PLAY yang akan diberikan dan akan anda rasakan di Mainbolajalan dengan BONUS ROLLINGAN SPORTBOOK 0.10% , BONUS ROLLINGAN CASINO 0.5% serta BONUS REFERRAL 1% dari WL Teman anda, Aman dan Terpercaya hanya ada di Bandar agen sbobet terpercaya di asia seperti pokerace99
Se você está procurando uma plataforma de apostas online completa e emocionante em Portugal, o 888Starz é a escolha perfeita. O 888Starz Portugal oferece uma ampla variedade de opções de apostas em desportos e jogos de casino, tudo em um só lugar conveniente.
Ao acessar o site oficial ler, você será recebido por uma interface intuitiva e amigável, projetada para proporcionar a melhor experiência de utilização. Com uma gama abrangente de opções de apostas desportivas, desde futebol até esportes menos convencionais, o 888Starz mantém você envolvido em uma atmosfera emocionante.
Para os amantes de jogos de casino, a plataforma não decepciona. Com uma vasta seleção de jogos de slots, mesas de casino ao vivo e outros jogos emocionantes, o 888Starz oferece entretenimento interminável para todos os gostos.
Além da diversidade de opções de apostas, o 888Starz se destaca pelos seus generosos bônus e promoções. Ao se cadastrar, você pode aproveitar ofertas exclusivas que aumentam seu saldo inicial, proporcionando mais oportunidades de ganhar.
O lançamento do AndroidX Test na Google I/O deste ano trouxe um grande avanço para os desenvolvedores que buscam aprimorar a testabilidade de seus aplicativos. Com a versão v1.0.0 Final e a integração do Robolectric 4.0, agora é possível realizar testes locais na JVM e instrumentação em dispositivos reais de forma mais eficiente. Além disso, a biblioteca Espresso simplifica a interação com elementos de interface, garantindo uma experiência de teste fluida e intuitiva. Se você quer explorar mais tecnologias e novidades, vale a pena conferir https://jogodecassinobrasil.com/ um site que traz informações detalhadas sobre cassinos online e revisões de plataformas. Assim como os testes aprimoram os apps, a escolha de um cassino confiável também melhora sua experiência de entretenimento.
Your writing makes even complicated topics easy to grasp. [Check application status] at 8171 Web Portal Amazing job!
Escrever uma vez e executar testes em diferentes plataformas, como o Google Cloud, é uma excelente estratégia para otimizar o desempenho do site e garantir que ele funcione bem em diversos dispositivos. Testar e ajustar o conteúdo antes do lançamento ajuda a identificar problemas que poderiam afetar a experiência do usuário. Para saber mais sobre como executar esses testes, você pode consultar recursos valiosos disponíveis em https://casinosnobrasil.com.br/video-bingo/show-ball-3-gaming-technology/ . Ao melhorar o desempenho e a funcionalidade do seu site, você estará criando uma experiência mais fluida para os usuários, o que é crucial em plataformas de cassino online. Realizar testes contínuos em diferentes dispositivos garante que a experiência do usuário seja sempre otimizada.
Postar um comentário