Koleksiyonlar ile düzeninizi koruyun
İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.
Bu belgede, mobil uygulamalar için manuel KG görevlerini otomatikleştiren ve sürekli entegrasyon (CI) ile lansman öncesi test stratejilerini etkinleştiren testler olan Robo komut dosyalarının nasıl kullanılacağı açıklanmaktadır. Örneğin, yaygın bir kullanıcı yolculuğunu test etmek veya kullanıcı adı ve şifre gibi belirli bir kullanıcı arayüzü (UI) girişi sağlamak için Robo komut dosyalarını kullanabilirsiniz. Robo komut dosyaları, Robo testi özelliğidir.
Robo komut dosyaları, test motoru olarak Robo testini kullanır. En temel haliyle Robo komut dosyası, "kullanıcı adı" metnini girme ve ardından Tamam düğmesine dokunma gibi bir dizi kullanıcı arayüzü işleminden oluşur. Robo komut dosyaları, bir öğenin görünmesini bekleme, bir öğenin belirli bir noktasına dokunma ve Android Debug Bridge (adb) kabuk komutlarını yürütme gibi işlemleri de içerebilir.
Robo komut dosyaları, geleneksel test çerçevelerine kıyasla aşağıdaki avantajları sunar:
Kapasite
Açıklama
Son derece sağlam
Robo komut dosyaları, uygulama sürümleri arasındaki önemli yapısal ve davranışsal farklılıkların yanı sıra uygulamanın kararsızlığını tolere edebilir.
Açık uçlu
Robo komut dosyası tamamlandıktan sonra temel Robo testi devreye girerek uygulamayı test etmeye devam edebilir. Bu devamlı test yaklaşımı, çeşitli önemli kullanım alanlarını mümkün kılar. Örneğin, özel bir oturum açma akışı gerçekleştirerek bir uygulamayı belirli bir duruma getirmek için Robo komut dosyası kullanabilirsiniz.
Kayıt Özellikli
Robo komut dosyalarını manuel olarak kodlamanız gerekmez. Android Studio'daki Robo komut dosyası kaydedici kullanılarak kaydedilebilir. Robo komut dosyaları oluşturmak veya değiştirmek için genellikle mobil geliştirme bilgisi gerekmez.
Esnek
Robo komut dosyaları, oyunlarda yaygın olarak kullanılan yerel olmayan kullanıcı arayüzü öğeleriyle etkileşimde bulunabilir.
Robo komut dosyaları, Robo testi sırasında koşullu olarak tetiklenir. Bu sayede kullanıcılar, Robo'nun davranışını artırabilir (genellikle daha fazla kapsama alanı elde etmek veya belirli işlevleri hedeflemek için). Geleneksel test çerçevelerinin aksine, Robo komut dosyaları aşağıdakileri destekler:
Çeşitli tetikleme koşulları (ör. belirli bir uygulama paketinin adının etkin olması veya olmaması ya da belirli bir öğenin ekranda gösterilmesi veya gösterilmemesi).
Yürütme kontrolleri (ör. maksimum yürütme sayısı, öncelik, ilgili tarama aşaması)
Alışılmadık işlem türleri (koşullu, öğe yoksayan, ekran kapatan).
Kolayca korunabildikleri için mümkün olduğunda Robo komut dosyalarını kullanmanızı öneririz. Örneğin, Robo komut dosyası kullanarak şunları yapabilirsiniz:
Bir uygulamanın işlevselliğinin özüne ulaşmak için önemli iş akışlarında gezinin.
Örneğin, oturum açma işlemi gerçekleştirebilir, ilk başlatmadan sonra uygulamanın durumunu ayarlayabilir ve yeni bir kullanıcı kaydedebilirsiniz.
Robo test süresinden en iyi şekilde yararlanmak için Robo'yu uygulamanın belirli bir bölümüne odaklayın. Robo komut dosyası, Robo test'i uygulamanın ilgili bölümüne yönlendirir. Burada Robo test, tam otomatik taramaya devam eder.
Analiz yapmak için bir uygulamayı belirli bir duruma veya ekrana getirin. Örneğin, uygulama içi mesajı, gizlilik politikasını veya oyunun belirli bir seviyesini analiz etmek için bu işlemi yapabilirsiniz.
Robo testiyle veya Robo testi olmadan uçtan uca bir enstrümantasyon testi gerçekleştirin.
Robo komut dosyası tamamlandıktan sonra tam otomatik taramaya devam edin.
Aşağıdaki işlemleri yapmak için daha gelişmiş Robo komut dosyası özelliklerini kullanın:
Robo, test edilen uygulamayı taramaya başlamadan önce veya tarama tamamlandıktan sonra işlemler gerçekleştirin. Örneğin, taramadan önce test edilen uygulama verilerini temizleyin ya da cihaz ayarlarını değiştirin.
Bir tarama sırasında Robo davranışının bazı yönlerini değiştirme, özellikle:
Robo'nun bazı kullanıcı arayüzü widget'larını veya uygulama ekranlarını yoksaymasını sağlayın.
Robo'nun belirli bir ekrandan geri giderken gerçekleştireceği özel bir işlem sağlayın.
Robo'nun, tarama sırasında belirli bir uygulama ekranıyla karşılaştığında belirli işlemleri yapmasını sağlayın.
Robo'nun tarama işlemini nasıl gerçekleştireceğini tamamen özelleştirin. Örneğin, tarama boyunca test edilen uygulamayı arka planda tutmak için koşullu ve koşulsuz işlemlerin bir kombinasyonunu kullanın. Bu sırada cihazda değişiklikler yapın ve yol boyunca görünen tüm pop-up iletişim kutularını kapatın.
Robo komut dosyalarının her tür testi değiştirmediğini unutmayın. Uygulamanızdaki düşük seviyeli mantık hatalarını yakalamak için yine birim testlerine ihtiyacınız vardır. Bu testler genellikle Android veya iOS ortamı gerektirmez. Robo komut dosyası testlerini, işletme mantığıyla ilgili belirli ve ayrıntılı onaylamalar içerebilen, kodda en iyi şekilde ifade edilen hedeflenmiş enstrümantasyon testleriyle desteklemenizi öneririz.
[[["Anlaması kolay","easyToUnderstand","thumb-up"],["Sorunumu çözdü","solvedMyProblem","thumb-up"],["Diğer","otherUp","thumb-up"]],[["İhtiyacım olan bilgiler yok","missingTheInformationINeed","thumb-down"],["Çok karmaşık / çok fazla adım var","tooComplicatedTooManySteps","thumb-down"],["Güncel değil","outOfDate","thumb-down"],["Çeviri sorunu","translationIssue","thumb-down"],["Örnek veya kod sorunu","samplesCodeIssue","thumb-down"],["Diğer","otherDown","thumb-down"]],["Son güncelleme tarihi: 2025-09-05 UTC."],[],[],null,["\u003cbr /\u003e\n\nThis document describes how to use *Robo scripts* , which are tests that automate\nmanual QA tasks for mobile apps, and enable continuous integration (CI) and\npre-launch testing strategies. For example, you can use Robo scripts to test a\ncommon user journey or provide specific user interface (UI) input, like a\nusername and password. Robo scripts are a feature of [Robo\ntest](/docs/test-lab/ios/robo-ux-test).\n\nRobo scripts use [Robo test](/docs/test-lab/android/robo-ux-test)\nas the test engine. In its most basic form, a Robo script consists of a\nsequence of UI actions like *enter text 'username'* and\nthen *tap the OK button* . Robo scripts can also include actions like waiting\nfor an element to appear, tapping at a specific point within an element, and\nexecuting Android Debug Bridge (`adb`) shell commands.\n\nRobo scripts have the following advantages over traditional testing frameworks:\n\n|----------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| **Capability** | **Description** |\n| Highly robust | Robo scripts can tolerate significant structural and behavioral differences between app versions and app flakiness. |\n| Open-ended | After a Robo script completes, the base Robo test can take over and continue testing the app. This continued testing approach enables several key use cases. For example, you can use a Robo script to bring an app into a particular state by performing a custom sign-in flow. |\n| Recordable | You don't need to code Robo scripts manually. They can be recorded using the Robo script recorder in Android Studio. Creating or modifying Robo scripts typically doesn't require any knowledge of mobile development. |\n| Flexible | Robo scripts can interact with non-native UI elements that are common in games. |\n\nRobo scripts are conditionally triggered during a Robo test, which lets users\naugment Robo's behavior - typically to achieve greater coverage or target\nspecific functionality. In contrast to traditional testing frameworks,\nRobo scripts support the following:\n\n- Various triggering conditions, for example, a particular app package name being active (or not) or a specific element being displayed on the screen (or not).\n- Execution controls, for example, a maximum number of executions, priority, relevant crawl stage.\n- Unconventional action types (conditional, element-ignoring, screen-closing).\n\nWe recommend that you use Robo scripts whenever possible because they can be\nmaintained effortlessly. For example, you can use a Robo script to do the\nfollowing:\n\n- Navigate significant workflows to get to the core of an app's functionality. For example, you can perform a sign-in, set up an app's state after the first launch, and register a new user.\n- Focus Robo on a particular part of an app to get the most out of Robo test time. Robo script guides Robo test to reach the relevant part of an app, where Robo test resumes a fully automated crawl.\n- Bring an app into a specific state or screen to perform an analysis, for example, to analyze an in-app message, privacy policy, or specific level of a game.\n- Perform an end-to-end instrumentation test, with or without Robo test resuming a fully automated crawl after the Robo script is complete.\n\nUse more advanced Robo script features to do the following:\n\n- Perform actions before Robo starts crawling the app-under-test or after a crawl is finished, for example, clean the app-under-test data before a crawl, or change device settings.\n- Change aspects of Robo behavior during a crawl, in particular:\n - Make Robo ignore some UI widgets or app screens.\n - Provide a custom action for Robo to perform when backtracking from a particular screen.\n - Make Robo perform specific actions whenever a particular app screen is encountered during a crawl.\n- Completely customize how Robo performs a crawl. For example, use a combination of conditional and non-conditional actions to keep the app-under-test in the background throughout the crawl, while performing device manipulations and dismissing any popup dialogs that appear along the way.\n\nKeep in mind that Robo scripts don't replace all kinds of tests. You still\nneed unit tests to catch low-level logic bugs in your app; these tests\ntypically don't require an Android or iOS environment. We recommend that you\nsupplement Robo script tests with targeted instrumentation tests that can have\nspecific, detailed assertions about business logic, which are best expressed\nin code.\n\nNext steps\n\n- To learn about Robo scripts structure, capabilities, usage, and actions, see\n the [Robo scripts reference guide](/docs/test-lab/android/robo-scripts-reference#ios-support-for-robo-scripts).\n\n- [Run a Robo test](/docs/test-lab/ios/robo-ux-test)."]]